2017-12-07 12 views
-1

테이블 (blob_table)에 2 열 blob_name, blob_file을 설정합니다.테이블의 필드가 BLOB로 채워지는지 확인하십시오.

blob_file 열은 기본적으로 NULL로 설정되고 BLOB와 함께 저장됩니다.

후 덩어리로 일부 행을 채우고 일부는하지, 나는 아래 PHP를 실행하려고 :

<?php 

$con = new mysqli('localhost','root','root','database'); 
if ($con->connect_error) {die("error!");} 

echo "<div><table><tr><th>Blob Not Yet Upload</th></tr>"; 

$sql = $con->prepare("SELECT blob_name FROM blob_table WHERE blob_file IS NULL"); 
$sql->execute(); 
$result = $sql->get_result(); 
while ($row = $result->fetch_assoc()) { 
echo "<tr><td>".$row['blob_name']."</td></tr>"; 
} 
echo "</table></div>"; 
mysqli_close($con); 
?> 

그것은 아무것도 반환하지 않은 이유는 무엇입니까? blob_file 열의 NULL에 해당하는 blob_name이 반환 될 것으로 예상됩니다.

+0

:

코드를 참조하십시오? –

+0

btw,'prepare/execute'을 제거하고'query()'를 사용할 수 있습니다. –

+0

그것은 db에서 blob 이미지를 가져 오거나 에코하는 방법이 아닙니다. –

답변

0

blob_file IS NULL은 (PHP 코드)에서 작동하지 않습니다. phpmyadmin에서 사용됩니다.

따라서 다음을 사용해야합니다. blob_file = '' 즉, 필드 (blob_file)는 null입니다. 당신은 DB에서 뭔가를 가져하려는 경우 다음 당신은 왜 NULL 값에 대해 쿼리하는,

<?php 

    $con = new mysqli('localhost','root','root','database'); 
    if ($con->connect_error) {die("error!");} 

    echo "<div><table><tr><th>Blob Not Yet Upload</th></tr>"; 

    $sql = $con->query("SELECT blob_name FROM blob_table WHERE blob_file = '' "); 

    while ($row = $sql->fetch_assoc()) { 
    echo "<tr><td>".$row['blob_name']."</td></tr>"; 
    } 
    echo "</table></div>"; 
    mysqli_close($con); 
    ?> 
+0

예! 그것은 작동합니다. 나중에 확인해. Thnks. –

+0

이 코드는 질문에 대답 할 수 있지만 이유 및/또는이 코드가 질문에 어떻게 대답하는지에 대한 추가 컨텍스트를 제공하면 장기적인 가치가 향상됩니다. –

+0

그래서 whaddaya는 그것을 고칠 수 있을까요? –