رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
دادن مورد های پیشنهادی با PHP و Ajax
#1
سلام، بنده این کد رو از w3schools.com گرفتم :
require_once("User.php");
$user=new User();
$users=$user->getUsers();
foreach ($users as $a) {
     $a['userName'];
} //You get the All 'userName' Fields 

$q = $_REQUEST["q"];

$hint = "";

if ($q !== "") {
    $q = strtolower($q);
    $len=strlen($q);
    foreach($a as $name) {
        if (stristr($q, substr($name, 0, $len))) {
            if ($hint === "") {
                $hint = $name;
            } else {
                $hint .= ", $name";
            }
        }
    }
}

echo $hint === "" ? "No Suggestion" : $hint;

?> 
بخش اول رو خودم نوشتم که یک مشکلی دارم، من فقط می خوام نام های کاربری کاربران سایتم رو به یک کاربر در هنگام جستجو پیشنهاد بدم ولی این کد که نوشتم در مورد تمام فیلد ها پیشنهاد می ده، مشکل از چیه؟
یک سوال دیگه هم داشتم، به جای این که بیام از این روش استفاده کنم، بهتر نیست که از PDO و FetchField استفاده کنم؟
پاسخ
تشکر شده توسط:
#2
user.php رو هم بزار ببینم
پاسخ
تشکر شده توسط:
#3
(04-03-1394، 04:16 ب.ظ)morrning نوشته: user.php رو هم بزار ببینم

بفرمائید :


public function getUsers()
{
    $sql='SELECT * FROM user';
    return $con=Database::FetchAll($sql);
}
پاسخ
تشکر شده توسط:
#4
خوب شما آرایه a$ رو درست نساختین. این کد رو تست کنید:
require_once 'User.php';
$user = new User();
$users = $user->getUsers();
$a = array();
foreach ($users as $user) {
    $a[] = $user['userName'];
} //You get the All 'userName' Fields 

$q = $_REQUEST['q'];

$hint = '';

if ($q !== '') {
    $q = strtolower($q);
    $len = strlen($q);
    foreach($a as $name) {
        if (stristr($q, substr($name, 0, $len))) {
            if ($hint === '') {
                $hint = $name;
            }
            else {
                $hint .= ", {$name}";
            }
        }
    }
}
echo $hint === '' ? 'No Suggestion' : $hint;
پاسخ
تشکر شده توسط: sorkhabi




کاربران در حال بازدید این موضوع: 1 مهمان