Задавайте вопросы, мы ответим
Вы не зашли.
Проблема такая - подсоединение к серверу вроде происходит, да и выбор базы тоже, но такое чувство, что таблица не создается, потому что при вызове элемента из таблицы сервак ничего не выдает.
Скрипт состоит из трех страниц - первая - указание данных для входа в базу,
вторая - подключение к базе и создание таблицы, задание переменной, которую я потом вкладываю в поле NOM таблицы QUESTION и третье - задается переменные первого ряда таблицы, и также я записываю переменную NOM в соответствующую ячейку таблицы в первый ряд, пытаюсь ее вывести - ничего не выдает.
И еще проблемка - при выводе второй страницы выдает ошибку
Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in /usr/home/d944bfc/public_html/q1.php on line 18
что она значит я не понял но ошибку функция выдает на саму себя потому то она как раз и находится в линии 18
Ниже привожу код трех страниц. по порядку.
1.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Predifinition de l'enquete</title>
</head>
<body>
<form action="q1.php" method="POST">
1. Serveur de Base MySQL
<br>
<input type="text" name="SERVER" /><br />
2. Login d'acces pour la Base MySQL<br />
<input type="text" name="LOGIN" /><br />
3. Mot de passe pour la base MySQL<br />
<input type="password" name="PASSWORD" />
<br />
<input type="reset" value="reset" />
<a href="q1.php"><input type="submit" name="suivant" value="go">
</a></form>
</body>
</html>
2.
<? session_start();
$_SESSION['SERVER']=$SERVER;
$_SESSION['LOGIN']=$LOGIN;
$_SESSION['PASSWORD']=$PASSWORD;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<body>
<? $link=mysql_pconnect($SERVER,$LOGIN,$PASSWORD);
if (!$link) echo "Je peux pas me connecter a une base"; else echo "tout va bien";\\\ тут выдает tout va bien то есть по идее подключился, но загвоздка в том, то я пробовал ввести логин и пароль несуществующие и он все равно выдает типа все в порядке
echo mysql_error(mysql_errno());\\ вот тут выдает ошибку
mysql_select_db('d944bfc_Q');
echo mysql_error();
mysql_query('CREATE TABLE QUESTION (
ID INT PRIMARY KEY DEFAULT 1,
NOM CHAR(100),
CORPS CHAR(100) NOT NULL,
TYPE CHAR(64) NOT NULL,
VARR CHAR(100) NOT NULL
)');
?> <? $a=mysql_select_db('d944bfc_Q'); echo $a; ?>
<form action="q2.php" method="GET"> <br>
Nom d'une enquete: <input type="text" name="nom"> <br />
<input type="submit" value="Ajouter une enquete">
</body>
</html>
3.
<? session_start();
$SERVER=$_SESSION['SERVER'];
$LOGIN=$_SESSION['LOGIN'];
$PASSWORD=$_SESSION['PASSWORD']; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title></title>
</head>
<body>
<? mysql_connect($SERVER, $LOGIN, $PASSWORD);
mysql_select_db('d944bfc_Q');
$a=mysql_query('SELECT NOM FROM QUESTION WHERE ID=1');
if ($a="1")
mysql_query('INSERT INTO QUESTION (NOM)
VALUES($nom)');
echo "<h1> L'enquete </h1>";
$result=mysql_list_tables('d944bfc_Q');
$i=0;
while($i<mysql_num_rows($result)) {
$t_name[$i]=mysql_tablename($result, $i);
echo $t_name[$i];
$i++;\\\ вообще ничего не выдает
}; ?>
Ajouter une question <input type="text" name="question" />
<br />
Preciser le type de reponse
<input type="radio" name="type" value="texte" checked="checked"/>Texte
<input type="radio" name="type" value="radio" />Radio
<input type="radio" name="type" value="liste" />Liste
<input type="radio" name="type" value="multiliste" />Multiliste
<input type="radio" name="type" value="checkbox" />Checkbox
<br />
Si une reponse n'est pas de type texte, precisez des reponses possibles en les separant par le /
<input type="text" name="varr" />
<br />
<input type="reset" name="reset" value="Reset" />
<input type="submit" value="Ajouter" />
</body>
</html>
Неактивен
Насколько я понимаю, для работы этих сценариев нужно, чтобы были выполнены по крайней
мере два следующих требования:
1. должны быть включены глобальные переменные
2. должны быть включены постоянные соединения с MySQL
Смысл ошибки - "ресурс не является подключением mysql" - т.е. Вы не смогли установить соединение
командой mysql_pconnect.
Попробуйте заменить mysql_pconnect -> mysql_connect и вывести mysql_error() - хотя бы увидите, в
чем проблема.
P.S. Очень редко можно увидеть скрипты на французском. C'est magnifique
Неактивен
Спасибо за Ваше сообщение))
Только я не могу понять в чем смысл включения глобальных переменных, если я работаю через сессию ? (по моему это более безопасно, тем более при включении глобальных переменных к базе не смогут получить доступ два админа одновременно), попробую поставить просто коннект, вдруг поможет. Если не поможет, еще напишу)))
Неактивен
не помогает ((( ошибка остается, ( Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in /usr/home/d944bfc/public_html/q1.php on line 18) но.....удивительная штука!!!! у меня во второй странице создается таблица с именем question в третьей странице есть скрипт вывода имен всех таблиц из базы, так вот, он выводит имя!! ну вот как так ?
Неактивен
Замените все mysql_qeury("...") на
mysql_query("...") or die(mysql_error());
Тогда Вы увидите ошибку MySQL в тот момент, когда она возникла, а не тогда, когда уже используете несформированный результат.
Неактивен
я сам не понял что я сотворил но тот mysql_error убрал а вместо него поставил везде как Вы сказали, и на второй странице он перестал выдавать ошибку, на третьей выдает и у меня с этим вопрос mysql_query('INSERT INTO question (NOM)
VALUES($nom)') or die(mysql_error()); такой запрос возможен при том, что $nom это переменная переданная с прошлой страницы, или нужно fetch использовать ?
Неактивен
что то я не могу найти как из php внести данные переменной в таблицу???? Подскажите пожалуйста ))
Неактивен
Таким запросом, как у Вас, но предполагается, что включена опция register-globals, о которой уже сказал paulus. Если эта опция отключена, то необходимо напрямую обращаться к переданным данным формы: $_GET['nom'] или $_POST['nom']
Например $nom = $_GET['nom'];
затем Ваш запрос
Неактивен
Не помогает ((( вставил данну строку в начале скрипта , при выполнении выдает ошибку Parse error: syntax error, unexpected T_VARIABLE in /usr/home/d944bfc/public_html/q2.php on line 20 на строку mysql_query('INSERT INTO question (NOM)
VALUES('$nom')') or die(mysql_error()); не могу понять в чем дело, (( понимаю, что он гвоорит типа такой переменной не существует, но как она может не существовать если она передана сценарию с прошлой страницы, с формы ???
Неактивен
синтаксическая ошибка, кавычка одинарная неправильно используется. В оригинале были двойные, внутри них одинарные. У Вас все одинарные.
Неактивен
Огромное спасибо))) Ошибок больше не выдает, сейчас пытаюсь понять почему он исполняет php скрипт а код html который дальше идет не выполняет )))
Неактивен