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

Форум MySQL

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

 

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

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

тема: Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index

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

 
 автор: Spenser   (08.03.2007 в 21:20)   письмо автору
 
   для: Trianon   (08.03.2007 в 21:12)
 

спасибо огромное! с этой функцией намного проще и ошибок нет:)

   
 
 автор: Trianon   (08.03.2007 в 21:12)   письмо автору
 
   для: Spenser   (08.03.2007 в 20:55)
 

в MySQL только что добавленная запись определяется через вызов функции mysql_insert_id()
А не отдельным запросом.

   
 
 автор: Trianon   (08.03.2007 в 21:04)   письмо автору
 
   для: cheops   (07.03.2007 в 13:16)
 

Выражение LIMIT может использоваться для ограничения количества строк, возвращенных командой SELECT. LIMIT принимает один или два числовых аргумента. Эти аргументы должны быть целочисленными константами. Если заданы два аргумента, то первый указывает на начало первой возвращаемой строки, а второй задает максимальное количество возвращаемых строк. При этом смещение начальной строки равно 0 (не 1):

Да. Ошибся. Возвращать, конечно, будет. Но явно не первую строку.

   
 
 автор: Spenser   (08.03.2007 в 20:55)   письмо автору
 
   для: cheops   (07.03.2007 в 00:33)
 

Все нашел свою ошибку.но тут возникла другая проблема как раз с тем запросом о котором вы говорили.мне надо выбрать только что добаленную запись.я пытаюсь делать это с помощью запроса:

SELECT * FROM zakaz ORDER BY idzakaz DESC LIMIT 1,1

ошибка такая же как и в первом случае.может я неправильно составил запрос?подскажите как правильно.данные есть 100%.

   
 
 автор: Spenser   (08.03.2007 в 20:28)   письмо автору
 
   для: cheops   (07.03.2007 в 13:16)
 

вы говорите про запрос уже в блоке else а не работает самый первый запрос до if.там есть 100% данные так что должно работать, а не работает:(
я аже не могу предположить в чем дело.

   
 
 автор: cheops   (07.03.2007 в 13:16)   письмо автору
 
   для: Trianon   (07.03.2007 в 09:51)
 

>Как раз из-за LIMITа и не будет.
Тем не менее возвращает.

   
 
 автор: Trianon   (07.03.2007 в 09:51)   письмо автору
 
   для: cheops   (07.03.2007 в 00:33)
 

Не будет он ничего возвращать. Как раз из-за LIMITа и не будет. Хотя формально запрос корректный, смысла в нем 0.

   
 
 автор: cheops   (07.03.2007 в 00:33)   письмо автору
 
   для: Spenser   (07.03.2007 в 00:18)
 

Проверьте при помощи функции mysql_num_rows() возвращает ли SQL-запрос
SELECT * FROM zakaz ORDER BY idzakaz DESC LIMIT 1,1

хотя бы одну запись?

   
 
 автор: Spenser   (07.03.2007 в 00:18)   письмо автору
 
 

Всем привет! у меня какие то проблемы с запросом а в чем дело никак не пойму.
вот код:

session_start();
  $SID=session_id();
  $timestamp = time();
  $s = strftime("%d-%m-%Y %H:%M:%S", $timestamp);
  $sql = "SELECT * FROM zakaz WHERE user='$SID'";
  $q = mysql_query($sql);
  if ($q)
  {
      $idzakaz = mysql_result($q,'',"idzakaz");
      $sql = "UPDATE cart SET zakaz='$idzakaz', done='1' WHERE user='$SID'";
      $q = mysql_query($sql);
  }
  else
  {
      $sql = "INSERT INTO zakaz (user, date, first_name, last_name, email, adres, telefon)
            VALUES ('$SID','$s','$_POST[first_name]','$_POST[last_name]','$_POST[email]','$_POST[adres]','$_POST[telefon]')";
      $q = mysql_query($sql);
      $sql = "SELECT * FROM zakaz ORDER BY idzakaz DESC LIMIT 1,1";
      $q = mysql_query($sql);
      $idzakaz = mysql_result($q,'',"idzakaz");
      $sql = "UPDATE cart SET zakaz='$idzakaz', done='1' WHERE user='$SID'";
      $q = mysql_query($sql);
  }
  $zak = 1;
  $zak_text = "<div align=center><b>Спасибо за Ваш заказ!<br>В ближайшее время наш менеджер свяжется с Вами</b><br><br></div>";
  session_destroy();

выдается ошибка:

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 6 in T:\home\virtual\cifrus2\zakaz.php on line 30

30 строка это:
if ($q)
{
$idzakaz = mysql_result($q,'',"idzakaz");
$sql = "UPDATE cart SET zakaz='$idzakaz', done='1' WHERE user='$SID'";
$q = mysql_query($sql);
}

   

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

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

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