Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: MySQL_query(); или добавка записи в базу!

Сообщения:  [1-6] 

 
 автор: AlexelA   (22.11.2006 в 23:41)   письмо автору
 
   для: One art galery   (22.11.2006 в 22:38)
 

Во-первых, необходимо подправить переменную c паролем: либо $pass, как в list(...), либо $password (при выводе данных).
Ну а про вывод оставшихся данных, я думаю вам необходимо явно указывать переменные,
извлекаемые из БД. Ведь используя "mysql_fetch_row($at)" вы получаете всю строку данных,
которая, насколько я понял, содержит больше данных. Т.е. необходимо определить
переменную, например $row = mysql_fetch_row($at); А теперь извлекайте данные, например, $row[0] -это первый элемент текущей строки вышей таблицы ( "id_author" строки $row в вашем случае). Аналогично извлекаете оставшиеся данные $name = $row[1], $pass = $row[2], ..

   
 
 автор: One art galery   (22.11.2006 в 22:38)   письмо автору
 
   для: AlexelA   (22.11.2006 в 22:22)
 

пасибо...но возник второй вопрос вот у меня есть скрипт который выводит данные из таблицы в которую мы записываем , но то что мы записали кроме id не че не выводит!

<?php
  $at 
mysql_query("SELECT * FROM authors");
  
// Проверяем успешность выполнения SQL-запроса
  
if(!$at) exit(mysql_erorr());
  
// Определяем таблицу и заголовок
  // Так как запрос может возвращать 
  // несколько строк, применяем цикл
  
while(list($id_author$name$pass) = mysql_fetch_row($at))
  {
    echo 
"<ul type=circle>
            <li>
$id_author</li>
            <li>
$name</li>
            <li>
$password</li>
          </ul>"
;
  }
?>

   
 
 автор: AlexelA   (22.11.2006 в 22:22)   письмо автору
 
   для: One art galery   (22.11.2006 в 21:45)
 

Насколько я помню, при явном указании столбцов в запросе, т.е."(name, passw, email)" необходимо добавлять такое же количество и параметров. А у вас "NULL, ' ".$_POST['name']." ', ' ".$_POST['pass']." ', ' ".$_POST['mail']." '" - т.е. 4.
Ошибка же говорит о том, что в столбец с параметром "name"
не может быть занесено значение "null". Исправьте запрос на
INSERT INTO authors (name, passw, email) VALUES (' ".$_POST['name']." ', ' ".$_POST['pass']." ', ' ".$_POST['mail']." ' ) или если
необходим счетчик, то добавьте его первым в перечисляемые столбцы
Должно все заработать.

   
 
 автор: One art galery   (22.11.2006 в 21:45)   письмо автору
 
   для: Trianon   (22.11.2006 в 21:36)
 

воистину...
вот что выдает...
Column count doesn't match value count at row 1
что бы это могло значить???

   
 
 автор: Trianon   (22.11.2006 в 21:36)   письмо автору
 
   для: one art galery   (22.11.2006 в 21:17)
 

есть такая функция, mysql_error()

   
 
 автор: one art galery   (22.11.2006 в 21:17)   письмо автору
 
 

хочу добавить данные в базу!!!
вот скрипт:

<form>
имя <input type="text" name="name">
пароль <input type="text" name="pass">
email <input type="text" name="mail">
<inpyt tupe="hidden" value="3" name="id">
<input type="submit" value="Ok">
</form>
<?php
include ("conf.php");
  
$query "INSERT INTO authors (name, passw, email) VALUES (NULL, ' ".$_POST['name']." ', ' ".$_POST['pass']." ', ' ".$_POST['mail']." ' ) ";
if(!
mysql_query($query)) {
echo (
"нет =((");
}
?>

все время пишет "нет =(" т.е. не добовляет!
хотя из базы данные выводит - проверенно!

   

Сообщения:  [1-6] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования