Próbuję utworzyć funkcję, która zwróci zapytanie mysql, które mogę następnie przepuścić i obsłużyć wyniki, ale wydaje się, że nie działa. Być może nie robię tego w odpowiedni sposób.Tworzenie funkcji php do zwracania wyników mysql
function GetAccounts($username){
require("dbconn.php");
$result = mysql_query("SELECT * FROM `accounts` WHERE `username` = '$username' ") or trigger_error(mysql_error());
return "$result";
}
$result = GetAccounts($username);
while($row = mysql_fetch_array($result)){
foreach($row AS $key => $value) { $row[$key] = stripslashes($value); }
$theusername = $row['theusername'];
$thepassword = $row['thepassword'];
echo $theusername;
}
Błąd I odbieranie jest
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
Próbowałem ładuje wszystkie powyższe do funkcji, ale może dostać tylko to, aby powrócić pojedynczy wynik za każdym razem. Ponieważ źle radzę sobie z każdym wynikiem, "myślę", że powyższy sposób jest taki, jak chcę to zrobić, ale daj mi znać, jeśli istnieje lepszy sposób lub co robię źle.
Kiedy echo funkcji z nazwą użytkownika, otrzymuję następujące;
Resource id #5
Udało się świetnie, dzięki. Co dokładnie się tam działo? Dlaczego cytowanie zmiennej wyniku zepsuło to? – mrpatg
Zobacz odpowiedź Toma poniżej. Ponieważ używanie podwójnych cudzysłowów oznacza, że wynik $ był rzutowany na ciąg znaków. – Pete