[Linux-programlama] Re: Php de gelen veri türüne göre işlem yaptırmak?

Omer Barlas omer at barlas.com.tr
30 Tem 2012 Pzt 13:31:29 EEST


Öncelikle ob_start'ı kapatalım, bu kadar küçük scriptlerde output
bufferinge ihtiyaç yok, ayrıca header hatalarını gizleyeceği için bir
problem varsa da göremeyeceğiz. İkincisi şu satırı şöyle düzeltelim;

- Orijinal -
echo "    <tr>
             <td>$baslik</td>
             <td><input name=\"sayfa_sil\" type=\"submit\" id=\"sil\"
value=\"sil\" />
             </td>
         </tr>";

Hiç kimsenin dikkatini çekmemiş sanıyorum ama satırın yanındaki sil
butonu, formdaki başlık satırını doldurmadığınız sürece işe yaramaz,
oraya başlık yazıp post edeceksiniz ki silecek. Tablonda id kolonu
olduğuna göre bu işin doğrusu şöyle;

- Düzeltilmiş -
echo "    <tr>
             <td>$baslik</td>
             <td><a href=\"islem.php?".$id."\">SİL</a></td>
         </tr>";

POST değil GET ile veri göndereceğiz, o yüzden bize cevap veren
sayfanın kodu aşağıdaki gibi değişecek, if elseif kısmındaki elseif
kısmını komple at, ona gerek yok, if satırının altına şunu ekle;

if ($_GET["action"] and $_GET["id"]) {
	switch ($_GET["action"]) {
		case "sil":
			$id = mysql_real_escape_string($_GET["id"]);
			mysql_query("DELETE FROM sayfalar WHERE id = '".$id."'");
			header("Location: /islem.php");
			exit; // Header satırını mutlaka exit ile destekleyelim.
		break;
	}
}

case kullanmamın sebebi bazı satırlarda sadece silme değil, ileride
yayına açma kapama vs işlemleri de yapmak isteyeceksiniz, bu onun ön
hazırlığı diyelim.

30 Temmuz 2012 13:15 tarihinde Levent SARI <lsari86 at gmail.com> yazdı:
> 30.07.2012 12:58 tarihinde, Omer Barlas yazdı:
>> http://pastebin.com/qQEQW8RQ
> Yok ne herhangi bir hata kodu dönüyor ne de işlem gercekleşiyor.
> Kayıt tamamda silme neden olmuyor anlayabilmiş değilim?
> Son durumda kodlar şöyle http://pastebin.com/4En5iaCA
> Kolaylıklar "SARI"
>>
>> 30 Temmuz 2012 12:49 tarihinde Levent SARI <lsari86 at gmail.com> yazdı:
>>> Arkdaşlar islem.php de son durum soyle
>>> http://pastebin.com/FEpPEdpU
>>> Ancak yazılanların hepsini ayrı ayrı uygulamama rağmen ne yazik ki silme
>>> kısmında netice alamadım.
>>> Bir hafta sonumu sırf buna harcadım ve hala netice yok çıldırmanın
>>> eşiğindeyim.
>>> Kolaylıklar....
>>> _______________________________________________
>>> Linux-programlama mailing list
>>> Linux-programlama at liste.linux.org.tr
>>> https://liste.linux.org.tr/mailman/listinfo/linux-programlama
>>> Liste kurallari: http://liste.linux.org.tr/kurallar.php
>>
>>
>
>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama at liste.linux.org.tr
> https://liste.linux.org.tr/mailman/listinfo/linux-programlama
> Liste kurallari: http://liste.linux.org.tr/kurallar.php



-- 
Omer Barlas
omer at barlas.com.tr


Linux-programlama mesaj listesiyle ilgili daha fazla bilgi