2014-11-16 20 views
0

我試圖將數組中的第一個元素插入到mysql中,或者如果數組爲空,則顯示一條消息,指出信息未知。我不斷收到這個數組的字符串錯誤,而不是更新MySQL。下面是我有爲什麼我得到這個數組字符串轉換錯誤?

$phone_number_parser = preg_match_all("/([0-9]?[- .(]*[0-9]{3}[- .)][0-9]{3}[- .][0-9]{4})/", $result['adtext'], $phone_number); 

    var_dump($phone_number[0]); 
    //go to the next row 
    if (empty($phone_number)) 
    { 
    $query2 = "UPDATE usedcars SET phonenumber = 'UNKNOWN' WHERE `key` = $x"; 
    echo "<font color='#FF0000'>PHONE NUMBER UNKNOWN</font><br>"; 
    mysqli_query($conn, $query2); 
    } 
    else 
    { 

    $query3 = "UPDATE usedcars SET phonenumber = ('$phone_number[0]') WHERE `key` = $x"; 
    echo "<font color='#00FF00'>INSERTING NUMBER $phone_number[0] INTO DATABASE</font><br>"; 
    mysqli_query($conn, $query3); 
    } 

    $x++; 
    } 

不僅我會得到這個錯誤,而不是更新的MySQL值,顯示消息顯示echo從QUERY3數組是否爲空。我在這裏做錯了什麼?

+2

這傢伙@Riad是一個野獸(真棒編碼器的委婉說法),他握着我的小小的新手,走過我的代碼。非常感謝和感謝! – tommyg

回答

1

您正在比較錯誤的值。

var_dump($phone_number[0]); 
//go to the next row 
if (is_array($phone_number[0]) && count($phone_number[0]) == 0) // check if an array... 
{ 
    //..codes goes here... 
} 
else 
{ 

    $query3 = "UPDATE usedcars SET phonenumber = (' ".$phone_number[0][0]." ') WHERE `key` = $x"; 
    echo "<font color='#00FF00'>INSERTING NUMBER $phone_number[0][0] INTO DATABASE</font><br>"; 
    mysqli_query($conn, $query3); 
} 
+0

固定的顯示字符串,但Im仍然收到錯誤和MySQL仍然沒有更新@Riad – tommyg

+0

用行號寫入總的錯誤... – Riad

+0

注意:數組到字符串轉換...這些行$ query3 =「 UPDATE usedcars SET phonenumber =('$ phone_number [0]')WHERE'key' = $ x「; echo「插入號碼$ phone_number [0] INTO DATABASE
」; mysqli_query($ conn,$ query3); @Riad – tommyg