這是我的問題 當他沒資料的時候會就會顯示這個段
有方法不顯示這個媽
<br />
<b>Notice</b>: Undefined variable: output in <b>C:\xampp\htdocs\xampp\index_love.php</b> on line <b>14</b><br />
我的PHP
<?php
require_once("SQL_data.php");
$id=isset($_POST['S1'])<>NULL?$_POST['S1']:"w0630";
$sql="select * from app_shop_favorite where user_id ='$id'";
mysqli_select_db($GD,$database);
$Result=mysqli_query($GD,$sql) or die(mysqli_error($GD));
while($r = mysqli_fetch_assoc($Result)){
$output[]=$r;
}
header('Content-type: application/json; charset=utf-8');
if($output != null)
print(json_encode($output,JSON_UNESCAPED_UNICODE));//JSON_UNESCAPED_UNICODE為中文不轉成unicode碼
exit();
?>
你要有預設變數的習慣才行。
雖然php可以將Notice訊息給關掉。
但如果要養成良好的寫程式習慣。一般還是建議不要關。
你可以在while前。先將 $output 宣告好。如
$output=[];
想說mysql 可以這樣打 換到mysqli就出現 我還以為我php我哪裡語法又錯了 到處找==
你如果回這樣的話,我會超想罵你的。
但我知道你不知道我罵你的意見。
感謝你的回復 我下次會記得先宣告好型態 在使用
而不是 直接使用 我在查mysql跟myqli的差別了
天啊~~~你真的不知道我想罵你的東西。
好吧,我提示一下。
你碰到的問題,跟mysql還有mysqli沒任何關係。
你完全理解錯方向了。
再去想破腦袋了解一下吧。很基本的東西而已。
我目前只知道 會顯示這個錯誤 是因為我的$Result 沒有資料 導致我的while沒有跑 接者我的$output[]=$r; 沒有執行
環環下來我的$output這個變數 是第一次被電腦看到 所以他不知道我這個事幹嘛的 接下來我真的不知道了 請告訴我
好,至少你還了解原因。只是不懂過程?原因?(好吧,我也不知道該怎麼說了)
認真來說,要告訴你的是變數宣告的重要性。
雖然php算是一個弱型態的語言。
沒宣告的變數,並不會造成程式中斷。了不起也就是一個通知等級的通告。
但如果想往設計程式這一行的話。就要學好宣告變數的重要性。
你要知道,這幸好是在php。如果是c或是java等語言。
你不將變數給宣告好。根本不給你用。
這邊我只是要告訴你變數宣告的重要性。
跟mysql、mysqli完全沒有關係。
但說到這個,記得之前有人告訴你快學pdo了吧。因該有人說過了。
快換掉吧。