2014-09-17 3 views
0

hi im пытается заполнить таблицу базы данных по приведенному ниже коду, но потом заполняет таблицу coloumn, просто говоря, что «Array» есть так или иначе, чтобы получить значения внутри этого массива и сделать их распечаткой в таблице.Получение значений внутри массива в базе данных

$query_new = "INSERT INTO red_message (message) VALUES ('$attributes')"; 
$result = mysql_query($query_new, $link_local);  

P.S я использую print_r, когда он возвращает 1 .. так print_r diont работы либо .. может кто-нибудь помочь мне получить значения внутри этого $ атрибутов массива

+1

Вы пытаетесь использовать 'print_r ($ attributes)' перед тем, как запрос запускается? –

+0

нет .. ждите, попробуйте это тоже –

+1

Ваша проблема в том, что '' '$ attributes''' ** является ** массивом, и вы передаете его в строку. В PHP массив, созданный для строки, представляет собой строку '' 'array''', вы должны использовать функцию для преобразования массива в значимую строку, например' '' implode''' – mTorres

ответ

1

Вы имеете в виду implode()?

http://php.net/manual/en/function.implode.php

Пример кода из php.net:

$array = array('lastname', 'email', 'phone'); 
$comma_separated = implode(",", $array); 

echo $comma_separated; // lastname,email,phone 
+0

есть только одно поле. не нужно 'implode()' –

+2

Затем он должен напечатать_r ($ attributes), чтобы увидеть, что он содержит. Потому что он написал это, возвращает ему массив. – Beardminator

1

пытаются использовать json_encode. Если ваш массив будет иметь несколько шагов, лучше сначала закодировать массив rhis, а затем вставить в базу данных. Вы также сохраняете структуру массива.

Пример:

$farr=array('user1'=>array('name'=>$name,'phone'=>$phone),'user2'=>array('name'=>$name,'phone'=>$phone)); 
$sarr=json_encode($farr); 
mysql_query("Insert INTO ......."); 

После того, как:

$query=mysql_query("SELECT ......"); 
$res=mysql_fetch_assoc($query); 
$finaly=json_decode($res, true); 
print_r($finaly); 
1

Это просто означает, что $attributes имеет Array типа. Вы должны убедиться, что $attributes имеет тип String (чего вы можете достичь с помощью implode()), прежде чем использовать его в mysql_query().

Смежные вопросы