2013-04-16 5 views
0

Я опубликовал несколько дней назад Pass MySQL medium blob into IOS NSData\UIImage , но пока не удалось найти решение. моя конкретная проблема заключается в том, что, когда я извлечение изображений из базы данных, BLOB или текста, он возвращает NULL, строки, которые не имеют переменные в них просто возвращают пустойblob text images from MySQL return NULL

while ($row = mysql_fetch_array($result)) { 

$add = array(); 
$add["Id"] = $row["Id"]; 
$add["Mail"] = $row["Mail"]; 
$add["Category"] = $row["Category"]; 
$add["Phone"] = $row["Phone"]; 
$add["Msgs"] = $row["Msgs"]; 
//image from blob 
$add["Picture"] = $row["Picture"]; 

// push single add into final response array 
array_push($response["adds"], $add); 
} 

есть ли другой способ решения изображения из бинарного \ текст?! Я попробовал https://stackoverflow.com/a/6273415/1333294, но ничего не работает для меня.

+0

Вы уверены, что поле изображения установлено в вашей БД? Можете ли вы предоставить мне схему и данные для таблицы, которую вы используете? –

+0

Изображение mediumtext utf8_general_ci. все остальные поля возвращают свои значения штраф – ItayAmza

+0

Я думаю, что ваше поле пустым в базе данных. Вы можете проверить это? ли оператор выбора: 'ВЫБРАТЬ картинка из YOUR_TABLE_NAME' А потом опубликовать результат –

ответ

1

Наконец !!

$img = $row["Picture"]; 
    $b64img = base64_encode ($img); 
    $b64img = mysql_real_escape_string($b64img); 
    $add["Picture"] = $b64img; 

простой как это! и xcode получают его как base64 string и гайку NULL. спасибо за предложения ...

0

Добавьте следующий код

header("Content-type: image/jpeg"); 

echo $row['picture']; 

// Display image with img html tag 

echo '<img src="data:image/jpeg;base64,' . base64_encode($row['picture']) . '" />'; 

echo 'Hello world.'; 

пожалуйста найти образец кода

$response["adds"] = array(); 
$add = array(); 
$add["Id"] = 1; 
$add["Mail"] = "[email protected]"; 
$add["Category"] = "category"; 
$add["Phone"] = "1234567"; 
$add["Msgs"] = "ths s txt msg"; 
//image from blob 
$add["Picture"] = "pciture"; 

// push single add into final response array 
array_push($response["adds"], $add); 
print_r($response["adds"]); 
header("Content-type: image/jpeg"); 
print $response["adds"][0]['Picture']; 
+0

но им толкая array_push массив ($ отклика [ "добавляет"], $ добавить), и все остальные значения являются строками ... – ItayAmza

+0

Я обновил ответ – kapil

+0

nop! еще null. но мне удалось передать данные, когда я преобразовал строки в таблицу со среднего текста на средний blob, по-видимому, преобразование преобразует данные в текст. как я могу, внутри php, преобразовать изображение в строку, прежде чем вставлять его в blob? – ItayAmza