@IgorRastarov

Как передать данные массива из php в базу данных?

Всем привет. Мне нужно передать массив данных из PHP в БД
$arr = array("name","text","norm","kill","old");
$connect = mysql_connect($host, $user, $password, $database) //подключение к бд
or die("Error " . mysql_error($connect)); //если не удалось подключиться - дальше не идем, выводим ошибку
		
	// Выборка базы
	mysql_select_db("test",$connect);
	
foreach($arr as $mine){
	// Установка кодировки соединения
	mysql_query("SET NAMES 'utf8'", $connect);
	$result = mysql_query ("INSERT INTO direct(lOGIN, LOGININFO, AGENT, AMOUNT, COST) VALUES ('".$mine["name"]."', '".$mine["text"]."', '".$mine["norm"]."','".$mine["kill"]."','".$mine["old"]."')")or die("Ошибки запроса: " . mysql_error());
}
mysql_close($connect);

И вот что получается(
joxi.ru/DmBgGwpFNqlwB2
А должно так text|norm|kill|old
ПОдскажите, где ошибка?
  • Вопрос задан
  • 1407 просмотров
Решения вопроса 1
@myphpscript
эм, если правильно понял:
1) цикл убрать
2)
"INSERT INTO direct(lOGIN, LOGININFO, AGENT, AMOUNT, COST) VALUES ('".implode("','", $arr)."')"
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@4iloveg
Full-Stack HTML Developer
Не понимаю что ты пишешь.
Есть массив с пятью строками
$arr = array("name","text","norm","kill","old");
проход по каждому элементу
foreach($arr as $mine){
Почему строка должна превратится в массив с этими ячейками?
('".$mine["name"]."', '".$mine["text"]."', '".$mine["norm"]."','".$mine["kill"]."','".$mine["old"]."')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы