2015-11-24 1 views
-2

я не могу вставить в MySQL из двух текстовых (обоего каждой строки),Как вставить несколько строк из прокручиваемых в MySQL

первого это add.html

<form id="form1" name="form1" method="post" action="func/insert.php"> 
<table> 
<tr> 
<td>text 1</td> 
<td>:</td> 
<td><textarea class="custom" rows="10" cols="80" name="text1" id="text1" required></textarea> 
</td> 
</tr> 
<tr> 
<td>text 2</td> 
<td>:</td> 
<td><textarea class="custom" rows="10" cols="80" name="text2" id="text2" required> 
</textarea></td> 
</tr> 
</table> 
</from> 

, а затем insert.php

<?php 
include"connection.php"; 
if(isset($_POST['text1'])){ 
if(strpos($_POST['text1'], "\n")){ 
$entrytext1 = explode("\n",$_POST['text1']); 
} 
else{ 
$entrytext1 = array($_POST['text1']); 
} 
foreach ($entrytext1 as $linetext1){ 
$sql="INSERT INTO data(text1,text2)VALUES('$linetext1','$_POST[text2]')"; 
$result=mysql_query($sql); 
if ($result){ 
echo"<script>alert(\"Success ...\");window.location='../index.php'</script>"; 
} 
else{ 
echo"<script>alert(\"Failed ...\");self.history.back()</script>"; 
} 
} 
} 
?> 

хорошо, я получаю ссылку из How to insert multiple rows from a textarea in MySQL

Итак, как я могу накануне ry row (text1 и text2) текстового поля в строку MySQL? пожалуйста, помогите мне никому

+0

КСТАТИ: MYSQL функции устарели. У вас очень опасные и инъекционные запросы. Пожалуйста, используйте PDO. –

+0

Что произойдет, если вы скажете, 25 строк в 1 поле и 3 в другом? – Steve

ответ

0

У вас были некоторые html-ошибки, а также небезопасное выполнение запроса. Попробуйте это: HTML

<form id="form1" name="form1" method="post" action="func/insert.php"> 
<table> 
<tr> 
<td>text 1</td> 
<td>:</td> 
<td><textarea class="custom" rows="10" cols="80" name="text1" id="text1" required></textarea></td> 
</tr> 
<tr> 
<td>text 2</td> 
<td>:</td> 
<td><textarea class="custom" rows="10" cols="80" name="text2" id="text2" required> 
</textarea></td> 
</tr> 
</table> 
</form> 

PHP

include"connection.php"; 
if(isset($_POST['text1'])){ 
    if(strpos($_POST['text1'], "\n")){ 
     $entrytext1 = explode("\n",$_POST['text1']); 
    } 
    else{ 
     $entrytext1 = array($_POST['text1']); 
    } 
    foreach ($entrytext1 as $linetext1){ 
     $stmt = $mysqli->prepare("INSERT INTO data(text1,text2)VALUES(:text1, :text2)"); 
     $result = $stmt->execute(array('text1' => $linetext1, 'text2' => $_POST['text2'])); 
     if ($result){ 
     echo"<script>alert(\"Success ...\");window.location='../index.php'</script>"; 
     } 
     else{ 
      echo"<script>alert(\"Failed ...\");self.history.back()</script>"; 
     } 
    } 
} 
+0

Неустранимая ошибка: вызов функции-члена prepare() для не-объекта – Luckyman

+0

Сначала вы должны перенестись из mysql в mysqli в свой connection.php и попробовать это. –

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