2012-06-24 51 views
0

我想用ajax獲取值,並且這些值是以字符串的形式出現的,但是問題是當我試圖使用一個空值條件時,然後返回this或者else做到這一點一個字符串不工作的空值子句

我的代碼是

if (empty($title) || empty($thumbnail) || empty($link)) 
{ 
    echo "404"; 
} 
else 
{ 
    some custom line 
} 

我的問題是,404返回即使它們中的任何一個(titlethumbnail,或link)的值不爲空。有誰能指出我錯在哪裏?

這裏是我如何從阿賈克斯獲得價值:

所有的
$title = mysql_real_escape_string($_REQUEST['title']); 
$thumbnail = mysql_real_escape_string($_REQUEST['thumbnail']); 
$link = mysql_real_escape_string($_REQUEST['link']); 
+0

你確定每個那些被越來越填充?如果使用硬編碼字符串進行測試,您的if()語句是否工作? –

+0

是的,它使用硬編碼。我不知道什麼是空的問題是試圖使用$ title =''那麼它也不工作 –

+0

如果你不使用'&&而不是'||'?或者我發現錯誤的部分「,但即使他們的任何一個標題或縮略圖或鏈接的值不爲空,那麼404也會返回」? – Havelock

回答

0

首先,我建議你不要使用空的,因爲它有一些具體的行爲。

第二:我不明白你爲什麼使用mysql_real_escape_string,你必須查詢數據庫?

此外,我想你(如@havelock指出)想要得到一個404,如果沒有設置這些值。

我爲這樣的:

if($title && $thumbnail && $link){ 
    //all fine.. 
} 
else 404 
+0

這個改變的邏輯是完全一樣的,只是表示相反。 – deceze

+0

是的,它的確切的一樣,仍然沒有工作的朋友,我試過 –

+0

這是什麼意思是不工作? (@deceze我只是沒有使用「空」。你可以請print_r或var_dump你檢查的3個變量,如果? –

相關問題