مشکل bindنکردن بیشتر از دوتا متغیر توسط bind_result

پرسیده شده
فعالیت 1218 روز پیش
دیده شده 836 بار
0

سلام و درود

استاد ببخشید شما ویدیوتون که آموزش میدادید، دقیقه حدوداً 27 میایید دوتا متغیر رو به bind_result پاس میدید و عملکردشم درسته، ولی من برای یک متغیر به درستی کار میکنه ولی وقتی دوتا متغیر رو (طبق کدم که زیر فرستادم) میخوام bind کنم، خروجی برای من خالی میاره و هیچکدومش رو بهم نمایش نمیده، من اشتباهی توی کدم انجام دادم یا مشکل از جای دیگه ست ؟

$sql = "select count(*) as member, firstName as Names from users ";
$stmt = $mysqli->prepare($sql);
#print_r($stmt);
$stmt->execute();
$stmt->bind_result($member, $Names);
$stmt->fetch();
echo "We have $member friends in our team: ";
$i = 0;
while ($stmt->fetch()) {
    echo "$i: $Name <br>";
    $i++;
}
فایل پیوست

امیر ابوئی
امیر ابوئی

19 دی 99

1
حذف شده

سلام و احترام

طبق sql زیر

$sql = "select count(*) as member, firstName as Names from users ";

باید همنام اسم فیلد را در bind_result قرار دهید 

$stmt->bind_result($member, $fristName);

 

 

 

فایل پیوست

امیر صالحی

توسط

امیر صالحی

20 دی 99

حذف شده
- همونطور که استاد خودشون درس دادن، تو دقیقه 23 ویدیو که مثال میزنن، متغیر رو به نام اون بخشی که براش در نظر میگیرن (که بعد از as میاد) در نظر میگیرن! - جدا از اینکه استاد مجدد تو پرسش زیر میگن هیچ لزومی برای همنامی وجود نداره و صرفاً برای خوانایی بیشتر همنام متغیر استفاده میشه، الان چطور میشه دقیقا؟؟؟ الان سه نوع حرف وجود داره از بابت نوع اسمی که برای متغیرمون باید استفاده کنیم! https://7learn.ac/community/%D8%AA%D8%A7%D8%A8%D8%B9-bind-result-nMvtV
امیر ابوئی

20 دی 99

حذف شده
https://7learn.ac/community/%D8%AA%D8%A7%D8%A8%D8%B9-bind-result-nMvtV
امیر ابوئی

20 دی 99

1
حذف شده
$sql = "SELECT count(*) as member, firstName as userFirstName FROM users";
if($stmt = $mysqli->prepare($sql))
{
    $stmt->execute();
    $stmt->bind_result($members, $userFirstName);

    $i = 1;
    while ($stmt->fetch()) {
        echo "$i: $userFirstName \n";
        $i++;
    }

    echo "We have $members friends in our team: \n";
}

این کوئری کار میکنه و مشکلی نداره، تغییر خاصی هم توی ساختار کوئری ندادم.  فقط وقتی fetch اجرا میشه میتونیم به مقادیر درون bind_result دسترسی داشته باشیم تا ازشون استفاده کنیم 

 

 

 

فایل پیوست

امیر صالحی

توسط

امیر صالحی

20 دی 99

0
حذف شده

یه سوال داشتم، من کد شمارو که عیناً هم کپی می‌کنم بهت خروجی نمیده و موقعی که سرور ران هست، تو قسمت توضیحاتش عکس شماره 1 و موقعی هم که از کد خودم استفاده می‌کنم، ارور عکس2 رو میده که علتش رو متوجه نشدم، ممنون میشم راهنماییم کنید!

 

فایل پیوست
pic.zip
76.18 KB

امیر ابوئی

توسط

امیر ابوئی

20 دی 99

1
حذف شده

عکس شماره یک اوکیه و مشلی نداره، کدی که به دیتابیس باهاش متصل شدید رو لطفا قرار بدید ظاهرا متد execute روی  connection شما اجرا نمیشه 

فایل پیوست

امیر صالحی

توسط

امیر صالحی

20 دی 99

0
حذف شده

بله من حس کردم این مشکلی داره ک وقتی به شکل شرطی مینویسیم به دلیل مشکلی که داره اجرا نمیشه و برای همین خروجی خالی میده!

$mysqli = new mysqli("localhost", "root", "", "myDB");

if(!$mysqli){
    echo "Can't connect to the database, please check the error details: "
    . PHP_EOL . $mysqli -> connect_errno . PHP_EOL . $mysqli -> connect_error ;
}
    //echo "Database connected successfully!!";
$mysqli -> set_charset('utf8');
فایل پیوست

امیر ابوئی

توسط

امیر ابوئی

20 دی 99

0
حذف شده

$mysqli = new mysqli('localhost','root','','myDB');

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
$mysqli->set_charset('utf8');

$sql = "SELECT count(*) as member, firstName as userFirstName FROM users";
if($stmt = $mysqli->prepare($sql))
{
    $stmt->execute();
    $stmt->bind_result($members, $userFirstName);

    $i = 1;
    while ($stmt->fetch()) {
        echo "$i: $userFirstName \n";
        $i++;
    }

    echo "We have $members friends in our team: \n";
}
فایل پیوست

امیر صالحی

توسط

امیر صالحی

21 دی 99

حذف شده
ممنون ولی من کد شمارو که کپی میکنم دقیقا، مجدد همون تصویر 1 رو بهم نمایش میده و در نتیجه اجرای کدهم چیزی بهم نمایش نمیده، به عوامل دیگه ای میتونه این مشکل بستگی داشته باشه ؟!!
امیر ابوئی

21 دی 99

حذف شده
تصویر یک خطایی به شما بر نمیگردونه، پس معنیش اینکه کد کار میکنه، یه بار با دقت بررسی کنید ببینید داحل دیتابیس دیتا دارید. بعدش بررسی کنید که توی query که وارد کردید نام فیلدها به درستی وارد شدن یا خیر. و بعد هم اسم جدول رو توی query بررسی کنید و نتیجه رو اعلام کنید
امیر صالحی

21 دی 99