Mysql sonuçları döndürmek için bir php işlevi oluşturma

2 Cevap php

Bir işlevi oluşturmak için çalışıyor Im, hangi i can sonra döngü aracılığıyla, bir mysql sorgu dönmek ve sonuçlarını işlemek, ama işe yarıyor görünmüyor olacak. Ben bile bu doğru şekilde yapıyor olabilir.

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;
}

I ararken hata

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource

Ben işlevi yukarıdaki tüm yükleme çalıştı, ama sadece tek bir sonuç, her zaman geri alabilir. Her sonucu işlemek için hasta ihtiyaç yana, ben yukarıdaki şekilde ben bunu istiyorum nasıl olduğunu "düşünüyorum", ama daha iyi bir yolu, ya da ne im yanlış yapıyor varsa bana bildirin.

I adı ile işlevini echo, ben şu olsun;

Resource id #5

2 Cevap

Bağlantı değişkeni çift tırnak çıkartın $result.

function GetAccounts($username){
  require("dbconn.php");
  $result = mysql_query("SELECT * FROM `accounts` WHERE `username` = '$username' ") or trigger_error(mysql_error()); 
  return $result;
 }

Çift tırnak içinde $result koyarak bir dizeye döküm olacağı anlamına gelir, ve 'kaynak' türündeki ardından artık. Bunun yerine deneyin:

return $result;