Wieviór
26.04.2004, 15:03:01
[php:1:cbb4cd1441]
<?
include 'config.php';
$zapytanie = ("SELECT * FROM artykuly WHERE ok=1 AND id=$_GET[id]");
$wykonaj = mysql_query($zapytanie);
while($rekord = mysql_fetch_array($wykonaj))
{
echo ($rekord['tytul']);
echo ($rekord['tresc']);
}
?>
[/php:1:cbb4cd1441]
Błąd: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:usrkrasnalwwwartykulyzobaczall.php on line 6
Mam jakieś złe zapytanie... czy może być taka konstrukcja z AND :?:
daniel111
26.04.2004, 15:14:25
Zmień $zapytanie na to:
$zapytanie = ("SELECT * FROM artykuly WHERE ok='1' AND id='$_GET[id]'");
Powinno działać
HaRy
26.04.2004, 16:13:07
a tak bedzie o drobinke bezpieczniej i poprawniej.
[php:1:805bd35979]<?php
$zapytanie = "SELECT * FROM artykuly WHERE ok='1' AND id='".intval($_GET['id'])."'"; //nigdy nie daje sie "niesprawdzonych" zmiennych pochodzenia GET lub POST ... intval() zwroci wartosc INTEGER zawartą w zmiennej $_GET['id'], o ktora jak mniemam Ci chodzi ...
$wykonaj = mysql_query($zapytanie) or die(mysql_error()); // przerwie wykonywanie skryptu i wyswietli blad w wypadku zlego zapytania - polecam!
$rekord = mysql_fetch_assoc($wykonaj); // petla jest niepotrzebna, jezeli z gory wiadomo, ze tylko jeden rekord bedzie wynikiem.
echo $rekord['tytul'];
echo $rekord['tresc'];
?>[/php:1:805bd35979]
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.