Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Podwójne zapytanie
Forum PHP.pl > Forum > Bazy danych > MySQL
Wieviór
[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
Zmień $zapytanie na to:

$zapytanie = ("SELECT * FROM artykuly WHERE ok='1' AND id='$_GET[id]'");

Powinno działać
HaRy
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.