2015-08-18 62 views
2

我有foreach循環工作。如果條件返回空,它應該是echo的東西。但是我收到了相反的效果。我試圖確保POST實際上包含數據,而不僅僅是whitespaces。以下是我迄今爲止:對於每一個,如果任何空:沒有空格

<?php 
    $transponame = $_POST['transponame']; 
    $transpoid = $_POST['transpoid']; 

    foreach($transponame as $key => $n) { 
     $name = mysql_real_escape_string($name); 
     $name = htmlentities($name, ENT_QUOTES); 
     $n = mysql_real_escape_string($n); 
     $n = htmlentities($n, ENT_QUOTES); 
     $transpoid[$key] = htmlentities(strip_tags($transpoid[$key]),ENT_QUOTES); 
     if (!empty($n) && !empty($transpoid[$key])) { 
      echo "its empty"; 
     } 

    } 
?> 
+0

變化!空($ transpoid [$關鍵])來!空($鍵) –

+0

如果你想看看它是否真正爲空,'修剪()'的'$ _POST',看看它是否是空的之後。 – Rasclatt

+0

此外,你會想看看'如果(空()'不'如果(!空()'否則就會適得其反,你提到如果它不是空的。 – Rasclatt

回答

1

變量,white space不是空的。所以你必須trim的價值。

<?php 
$transponame = $_POST['transponame']; 
$transpoid = $_POST['transpoid']; 

foreach($transponame as $key => $n) { 
    $name = mysql_real_escape_string($name); 
    $name = htmlentities($name, ENT_QUOTES); 
    $n = mysql_real_escape_string($n); 
    $n = htmlentities($n, ENT_QUOTES); 
    $transpoid[$key] = htmlentities(strip_tags($transpoid[$key]),ENT_QUOTES); 
if (empty(trim($n)) || empty(trim($transpoid[$key]))) { 
echo "its empty"; 
}; 

} ?> 
+0

這個工作!謝謝!另外,爲幫助其他人的情況下,他們有同樣的問題我認爲我搞砸了對代碼的更新部分! – spencdev

相關問題