Къде греша ?

smileface

Registered
Код:
<?php
session_start();
include("dbConfig.php");
if($_GET['username'])
{
$getuser = mysql_query("SELECT * FROM `users` ORDER BY `id` ASC");
while($user=mysql_fetch_array($getuser))
{
echo ("<a href=\"users.php?user=$user[username]\">$user[username]</a><br />\n");
}
}
else
{
$getuser = mysql_query("SELECT * FROM `users` WHERE username = '$_GET[username]'");
$usernum = mysql_num_rows($getuser);
if ($usernum == 0)
{
echo ("Няма потребители");
}
else
{
$profile = mysql_fetch_array($getuser);
echo ("<center><b>Профила на: $profile[username]</b><br /></center>
Местоположение: $profile[location]<br />
Email адрес: $profile[email]");
}
}
?>
Къде греша, че не ми изкарва всички потребители от базата данни :/
 
PHP:
<?php
session_start();
include("dbConfig.php");
if(!isset($_GET['username']))
{
$getuser = mysql_query("SELECT * FROM `users` ORDER BY `id` ASC");
while($user=mysql_fetch_array($getuser))
{
echo ("<a href=\"users.php?user=$user[username]\">$user[username]</a><br />\n");
}
}
else
{
$getuser = mysql_query("SELECT * FROM `users` WHERE username = '$_GET[username]'");
$usernum = mysql_num_rows($getuser);
if ($usernum == 0)
{
echo ("Няма потребители");
}
else
{
$profile = mysql_fetch_array($getuser);
echo ("<center><b>Профила на: $profile[username]</b><br /></center>
Местоположение: $profile[location]<br />
Email адрес: $profile[email]");
}
}
?>
 
smileface каза:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\lov\users.php on line 7
Това ми изписва. ;x
Казва ти, че имаш невалиден аргумент..
Провери си отново полетата и заявката която правиш. :)

П.П. Виж така какво ще ти изкара:
PHP:
<?php
session_start();
include("dbConfig.php");
if(!isset($_GET['username']))
{
$getuser = mysql_query("SELECT * FROM `users` ORDER BY `id` ASC") or die (mysql_error());
while($user=mysql_fetch_array($getuser))
{
echo ("<a href="users.php?user=$user[username]">$user[username]</a><br />\n");
}
}
else
{
$getuser = mysql_query("SELECT * FROM `users` WHERE username = '$_GET[username]'");
$usernum = mysql_num_rows($getuser);
if ($usernum == 0)
{
echo ("Няма потребители");
}
else
{
$profile = mysql_fetch_array($getuser);
echo ("<center><b>Профила на: $profile[username]</b><br /></center>
Местоположение: $profile[location]<br />
Email адрес: $profile[email]");
}
}
?>
 
И все пак кода ти не е написан добре.
Защо на echo слагаш () отвън ? също и на include ?
Да не говорим за някой други проверки.. Но ти си знаеш де.
 
proba каза:
Защо на echo слагаш () отвън ? също и на include ?.

php.net каза:
Всъщност echo() не е точно функция (а езикова конструкция), така че не е задължително използването на кръгли скоби при употребата й. echo() (за разлика от други езикови конструкции) не се държи като функция, така че, невинаги може да се използва в контекста на функция. Освен това, ако искате да предадете повече от един параметър към echo(), параметрите не трябва да бъдат в кръгли скоби.


php.net каза:
Тъй като include() е специална езикова конструкция, употребата на скоби около аргумента й не е необходима.

Малко инфо около двете конструкции.
 
Знам го това, но го питам той защо ги слага тези скоби като са безсмислени.
 

Back
Горе