2012-09-19 6 views
0

So..in가 내 테이블에 저장된 값을 가져 오는거야 텍스트 영역은 다음과 같이 수정할합니다 :업데이트 값이

그것은 질문에 모든 fine..the 값을의
$l=mysql_query("select * from intrebari where cod_chestionar='".$_SESSION['cod']."'"); 

echo "<form method='POST' action='lalalalal.php'>"; 
echo "<textarea name='edit' cols='50'>"; 
while($p=mysql_fetch_array($l)) 

{ 

    echo $p[denumire_intrebare]; 
    echo "\n"; 

} 
echo "</textarea>"; 
echo "<input type='submit' value='Finished' name='save_edit'/>"; 
echo "</form>"; 
} 

, 별도의 줄에 가져옵니다. 필요한 경우 업데이트를 원합니다. 그래서 내 업데이트 파일에서 나는 다음과 같이하고있다 :

$a=$_POST['edit']; 

$a_array=explode("\n",$a); 


    foreach($a_array as $b) 

    { 


$sql=mysql_query("UPDATE intrebari set denumire_intrebare='$b' WHERE cod_chestionar='".$_SESSION['cod']."'"); 
echo $b; 
} 

업데이트를하기 위해 동일한 cod_chestionar를 가지고있는 모든 질문을 원한다. 이 순간에 제가 업데이트를하면 모든 질문에 동일한 가치가 부여됩니다. 에코를 수정하면 값을 내게 가져 오지만 테이블에서 업데이트하지는 않습니다. 당신이 생각할 수 없기 때문에 의견을 제시 할 수 있습니까?

답변

1

다중 레코드에 <textarea> 중 하나를 사용하는 경우 개별 메시지를 수정하고 개별적으로 업데이트하려면 textarea을 별도로 사용해야합니다.

당신은 당신의 intrebari 표에 고유 ID 필드가 있어야하며 우리는 id, 우리가 문제를 해결할 않습니다 사용할 이름을 것입니다 :

<?php 

$l = mysql_query("select * from intrebari where cod_chestionar='".$_SESSION['cod']."'"); 

echo "<form method='POST' action='lalalalal.php'>"; 

while($p = mysql_fetch_array($l)){ 
    echo "<textarea name='edit[".$p['id']."]' cols='50'>"; // Using `id` field here to make array of textareas 
    echo $p[denumire_intrebare]; 
    echo "</textarea>"; 
} 

echo "<input type='submit' value='Finished' name='save_edit'/>"; 
echo "</form>"; 

?> 

그리고 업데이트 :

<?php 

$a = $_POST['edit']; 

foreach($a AS $id => $b){ 
    $b = mysql_real_escape_string($b); 
    $id = mysql_real_escape_string($id); 

    $sql = mysql_query("UPDATE intrebari set denumire_intrebare='$b' WHERE id='".$id."'"); // Using id field again 
} 

?> 
+0

음을. .. id = ' ". $ id."'... fisrt 이드는 무엇을 의미합니까? – Bibu

+0

나는 나의 대답에서 이미 설명했다. 다시 대답을 읽어라. – Night2

관련 문제