girişler ve onay kutuları ile mysql güncelleme nasıl

1 Cevap php
    <?
if (isset($_POST['onay'])) {
foreach  ($_POST['secilen'] as $zuha) {
$olay = mysql_query("update mp3 SET aktif = '1' WHERE id = '$zuha'");
}
if ($olay) {
    echo "islem tamam";
    exit;
}
}
?>

ve bu form ile: (select * mp3 Aktif gelen = '0 ')

<form name="form" method="post">
<input readonly type="text" name="id" value="<?=$haciosman['id']?>" />
<input type="text" name="baslik" value="<?=$haciosman['baslik']?>
<input type="checkbox" name="secilen[]" value="<?=$haciosman['id']?>">
<input type="submit" name="onay" value="Onayla" />

Ben kontrol her satır için "1 Aktif" ayarlayabilirsiniz. ama ben de "baslik" güncellemek istiyorum! nasıl ben bu php kodu ile her "baslik" güncelleyebilirsiniz?

1 Cevap

Ben doğru anlamak bunu yapmak istiyorum:

mysql_query("UPDATE mp3 
             SET 
                 aktif = '1', 
                 baslik = '" . mysql_escape_string($_POST['baslik']) ."' 
             WHERE id = '$zuha'");

Ama bu zaten original question ne var benzer:

mysql_query("update mp3 set aktif = '1', 
                              baslik = '$_POST[baslik]' 
               where id = '$_POST[id]'")

Tek fark artık bir döngü içinde sorgu yapmak ve farklı bir kimlik değişken kullanmak olmasıdır.

Orijinal soru kodunuzu Yorumlarım aynı kalır. (;))

PS: mysql_escape_string() Biraz güvenlik için Tanıtıldı.

UPDATE: Tamam ben şimdi sorun var bence. Temelde veritabanındaki her giriş için bir giriş alanı koleksiyonu, böyle bir şey oluşturmak istiyorsanız:

<form name="form" method="post">
<table>

<?php while($haciosman = ($query)):?>
<tr>
   <td><input readonly type="text" name="id" value="<?=$haciosman['id']?>" /></td>
   <td><input type="text" name="baslik[<?php echo $haciosman['id'] ?>]" value="<?=$haciosman['baslik']?> </td>
   <td><input type="checkbox" name="secilen[]" value="<?=$haciosman['id']?>">

</tr>
<?php endwhile; ?> 

</table>
<input type="submit" name="onay" value="Onayla" />
</form>

Sen sadece onay kutularını için yaptığı gibi benzer diziler baslik[$haciosman['id']] gibi metin alanları, başka adlarını tanımlamak ama bu sefer kayıt kimliğidir dizi tuşu belirleyebilirsiniz.

: Sonra PHP kodu böyle bu diziyi ($_POST['baslik'] şimdi bir dizi içerir) erişebilirsiniz

if (isset($_POST['onay'])) {
  foreach  ($_POST['secilen'] as $zuha) {
    $olay = mysql_query("UPDATE mp3 
                         SET 
                            aktif = '1', 
                            baslik = '" . mysql_escape_string($_POST['baslik'][$zuha]) ."' 
                         WHERE id = '$zuha'");
  }
}

UPDATE 2:

Gerçekten, official short introduction to forms okumak bu makalede bağlantıları takip ve genel olarak PHP ile çalışmak nasıl daha fazla fikir almak için resmi belgelerine okumalısınız.