not a valid MySQL result resource

not a valid MySQL result resource

народ,плз помогите на вот этот кусок кода кидает следующее:

Warning: Supplied argument is not a valid MySQL result resource in c:/usr/local/apache/htdocs/del_news.php on line 13

$tmp=1;
$result=mysql_db_query("news","SELECT * FROM tablename ORDER BY id DESC");
вот 13: while($row=mysql_fetch_array($result))
{
$result=mysql_db_query("news","INSERT INTO tablename set id='$tmp++'");
}
 

lunizz

Guest
А ты до запроса к БД приконнектился? Проверь ;)
Или с ID коннекта возможно лажа...
 
вот ...
if(!($link=mysql_connect($host,$userdb,$passworddb))){
echo "error in connecting to the host";
header("Location:$host");exit();
}
mysql_db_query("news","DELETE FROM tablename WHERE id='$id'");

$tmp=1;
$result=mysql_db_query("news","SELECT * FROM tablename ORDER BY id DESC");
while($row=mysql_fetch_array($result))
{
$result=mysql_db_query("news","INSERT INTO tablename set id='$tmp++'");
}
 

Serega

Guest
$tmp=1;
$result=mysql_db_query("news","SELECT * FROM tablename ORDER BY id DESC");
вот 13: while($row=mysql_fetch_array($result))
{
$result=mysql_db_query("news","INSERT INTO tablename set id='$tmp++'");
}
в строке
$result=mysql_db_query("news","INSERT INTO tablename set id='$tmp++'");
ты затираешь результат, который содержит всё что было выбрано в первом запросе :), измени имя переменной. ;)
 
Автор оригинала: Serega

в строке
ты затираешь результат, который содержит всё что было выбрано в первом запросе :), измени имя переменной. ;)
что то я тебя не совсем понял..:)
 
Автор оригинала: tony2001
дубль два:

после запроса поставь
echo mysql_error();
ставил...
$tmp=1;
$result=mysql_db_query("news","SELECT * FROM tablename ORDER BY id DESC");
echo mysql_error();
while($row=mysql_fetch_array($result))
{

$result=mysql_db_query("news","INSERT INTO tablename set id='$tmp++'");
echo mysql_error();
}
и то же самое... а echo mysql_error(); выдает...Duplicate entry '1' for key 1
 

lunizz

Guest
Originally posted by Winnie Pooh

ставил...
$tmp=1;
$result=mysql_db_query("news","SELECT * FROM tablename ORDER BY id DESC");
echo mysql_error();
while($row=mysql_fetch_array($result))
{

$result=mysql_db_query("news","REPLACE INTO tablename set id='$tmp++'");
echo mysql_error();
}
и то же сомое... а echo mysql_error(); ничего не выдает...
Действительно, перепиши не
$result=mysql_db_query("news","REPLACE INTO tablename set id='$tmp++'");

а просто

mysql_db_query("news","REPLACE INTO tablename set id='$tmp++'");

Может лучше не replace а UPDATE ?
 

tony2001

TeaM PHPClub
Винни, ты по-английски читаешь ?
он тебе ясно говорит - "Duplicate entry '1' for key 1"
НЕ МОГУ ВСТАВИТЬ, ТАКОЕ ЗНАЧЕНИЕ КЛЮЧА УЖЕ ЕСТЬ.
дальше сам разберешься ?
 

lunizz

Guest
И добавь условие WHERE, а то у тебя всю таблу переколбасит :(
 
Автор оригинала: lunizz


mysql_db_query("news","REPLACE INTO tablename set id='$tmp++'");

Может лучше не replace а UPDATE ?
не помогло.... ошибка исчезла,но в таблице
id name
1 (здесь тоже долно быть 1 но нету)
2 2
3 3
это при удалении 4 строки....
 

Serega

Guest
и что неясного $result в первом запросе и $result во в запросах в цикле.
 

lunizz

Guest
Скажи по русски, что ты хочешь сотворить с этой странной таблицей? :)
 
Автор оригинала: lunizz
Скажи по русски, что ты хочешь сотворить с этой странной таблицей? :)
есть....
id name text
1 1 1
2 2 2
3 3 3
надо чтоды при удалении второй строки стало
id name text
1 1 1
2 3 3
 

tony2001

TeaM PHPClub
мля
приехали
ЭТОГО НЕ НАДО И НЕЛЬЗЯ ДЕЛАТЬ
говорили-говорили об этом...
 
Сверху