بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

خالی بودن جیسون (JSON) (حل شد)

مدیریت گفتگو
alihomayouni 11 سال پیش
آخرین تغییر: 11 سال پیش

سلام من وقتی میخوام از سایتم جیسون بگیرم مقدار خلی میده یعنی [] میده فقط. همین کد با WAMP جواب داده ولی روی سرور واقعی کار نمیکنه.

توی این آدرس میتونید ببینید!

این کدم (رمز و یوزر اینامم درست زدم):

 <?php
header('Content-Type: text/html; charset=utf-8');
$connection=mysqli_connect("localhost","usname","123456","db");
mysqli_set_charset($connection, 'utf8');
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$result = mysqli_query($connection, "SELECT * FROM wp_posts WHERE post_type='post'");

$output = array();
while($row = mysqli_fetch_array($result)) {
$record = array();
$record['post_title'] = $row['post_title'];
$record['post_content'] = $row['post_content'];
$output[] = $record;
}
echo json_encode($output);
mysqli_close($connection);
?>

نظرات

CodeMaster 11 سال پیش
قسمت header رو از کدتون بردارید
alihomayouni 11 سال پیش
حذف کردم باز هم خالیه
CodeMaster 11 سال پیش
مطمئن هستید که فیلد post_type درسته؟ چون خالیو داره نشون میده یعنی چیزی وجود نداره که نشون بده
alihomayouni 11 سال پیش
کلا where رو حزف کردم بازم خالیه
MyNewName 11 سال پیش
اینو اضافه کنید بعد از $result ببینید چه خطایی میده : mysqli_error($connection);
alihomayouni 11 سال پیش
هیچی بهش اضافه نشد.
MyNewName 11 سال پیش
این کد که دادم رو echo کردید دیگه ؟ اینطوری : $result = mysqli_query($connection, "SELECT * FROM wp_posts WHERE post_type='post'"); echo mysqli_error($connection);
alihomayouni 11 سال پیش
بله عزیز بازم فقط [] میاد
MyNewName 11 سال پیش
شاید اصلا پستی موجود نیست خروجی این رو بدید : $result = mysqli_query($connection, "SELECT * FROM wp_posts WHERE post_type='post'"); echo mysqli_num_rows($result);
alihomayouni 11 سال پیش
هر دو کاری که فرمودید کردم باز هم فقط [] نشون میده! میتونن یه کاری کنن که کسی روی سرورشون نتونه ازین کارا کنه؟ فکر میکنم اصلا به دیتابیس نمیتونه وصل شه کلا هر تغییری میدم واکنشی نداره!
MyNewName 11 سال پیش
این کدی که من گذاشتم باید خروجی بده دوست عزیز یعنی باید مثلا یه مقداری برگردونه ، 0 یا مثلا 10 یا 5 یا ...
alihomayouni 11 سال پیش
پست پایین رو میتونید مطالعه کنید لطفا

پاسخ‌ها 1

alihomayouni 11 سال پیش

الان یه چیزایی نشون میده. (معلوم شد از سرور JSON بسته شده بوده!) ولی همش ارور میگیره از فایل PHP استاد.

آدرس فایل PHP آپلود شده

<?php
$connection=mysqli_connect("localhost","user","ramz","db");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$result = mysqli_query($connection, "SELECT * FROM wp_posts WHERE post_type='post'");

$output = array();
while($row = mysqli_fetch_array($result)) {
$record = array();
$record['post_title'] = $row['post_title'];
$record['post_content'] = $row['post_content'];
$output[] = $record;
}
echo json_encode($output);
mysqli_close($connection);
?>





error:
Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in /home2/mydesign/domains/my-design.ir/public_html/adh/index.php on line 7 Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, null given in /home2/mydesign/domains/my-design.ir/public_html/adh/index.php on line 10 [] Warning: mysqli_close() expects parameter 1 to be mysqli, boolean given in /home2/mydesign/domains/my-design.ir/public_html/adh/index.php on line 17

نظرات

MyNewName 11 سال پیش
دوست عزیز شما بعد کانکت شدن به دیتابیس ، بعدش باید نام دیتابیس هم بگیری دیگه !!! mysqli_select_db($connection,"test");
javac 11 سال پیش
این ادرس کلی خطا داده که!! پارامترهای مربوط به هاست و دیتابیس رو چک کنید درست وارد شده
alihomayouni 11 سال پیش
اون رو که آخر خط دوم دادم
alihomayouni 11 سال پیش
اولی که باید لوکال هاست باشه بقیش هم که دیگه یوزر پسورد هست که از خود سایت رفتم دیدم باز، اسم دیتابیس هم از phpmyadmin دیدم mydesign_mddb هست

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .