Komut geri textarea içine mysql ve php ile çalışan ve

1 Cevap php

Bir textarea dizeleri bir listesini tutacak özel bir komut dosyası yazmak çalışıyorum. Textarea her satırı bir tablodan bir satır olacaktır.

Ben sorun göndermek dayalı satır, ekleme, güncelleme veya silme sağlamak için komut dosyası çalışmaya nasıl.

So, for instance, I currently have 3 rows in the database: john sue mark

Sue silin ve Richard ekleyebilir ve sue ile satırı silin ve Richard için bir satır eklemek olacaktır edebilmek istiyorum.

Benim kod aşağıdaki gibidir şimdiye kadar:

To query the db and list it in the textarea: $basearray = mysql_query("SELECT name FROM mytable ORDER BY name");

<textarea name="names" cols=6 rows=12>');
<?php
   foreach($basearray as $base){
      echo $base->name."\n";
   }
?>
</textarea>

Gönderdikten sonra, var:

<?php
$namelist = $_REQUEST[names];
$newarray = explode("\n", $namelist);

foreach($newarray as $name) {
   if (!in_array($name, $basearray)) {
      mysql_query(DELETE FROM mytable WHERE word='$name'");
   } elseif (in_array($name, $basearray)) {
      ;
   } else {
      mysql_query("INSERT INTO mytable (name) VALUES ("$name")");
   }
} 

?>

Ben yanlış ne yapıyorum söyle lütfen. Ben textarea içeriğini düzenlemek zaman çalışmak için herhangi bir fonksiyonları almıyorum.

Teşekkürler!

1 Cevap

Cevap basit. Don't do it using textarea. Bu sizin yanlış yaptığınızı ne.

List your strings in HTML table, with "Edit" and "Delete" buttons. Edit your rows by one and you'll never have any problem.

, Bir düz metin dosyası olarak bir veritabanı tedavi tutarlı olmalı ve bir düz metin dosyası olarak düşünmek sizin yaklaşım olarak. Yani, yazmadan önce boşaltılmalıdır.

Edit:
Or - even much,much better - get rid of the database and use a txt file instead.

Yani, kodunuzu gibi basit hale

<textarea name="names" cols=6 rows=12>');
<?php readfile('base.txt') ?>
</textarea>

ve form işleyicisi

<?php file_put_contents("data.txt",$_REQUEST['names']); ?>