Türkiye'nin En Eski Webmaster Forumu İyinet'e Hoşgeldiniz!

şu kodu çalıştıramadım yardım lütfen

hakimi

0
Onaylı Üye
Üye
Katılım
1 Temmuz 2006
Mesajlar
1,356
Açılan Konu
157
Tepki puanı
0
PHP:
$vid = $_GET['id'];
$strSQL2 = "Delete  from video where id = $vid";
mysql_query($strSQL2);
$strSQL3 = "DELETE FROM `vote` WHERE vid =$vid";
mysql_query($strSQL3);

birincisi çalışıyor ikincisi çalışmıyor. Bunu nasıl çalıştırabilirim.
 

Caesar

0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Açılan Konu
83
Tepki puanı
7
birincisi çalışıyor ikincisi çalışmıyor. Bunu nasıl çalıştırabilirim.

PHP:
$vid = $_GET['id'];
$vid=strip_tags($vid);
$bozuk=array("'","\"","\\");
$duzgun=array("","","");
$vid=str_replace($bozuk,$duzgun,$vid);

if ($vid!=lisanssız) {
$strSQL2 = mysql_query("Delete  from video where id = '".$vid."'") or die(mysql_error());
$strSQL3 = mysql_query("DELETE FROM `vote` WHERE vid = '".$vid."'") or die(mysql_error());
}
 

iyinet

Root
Root
İyinet Ekibi
Onaylı Üye
Katılım
2 Eylül 2002
Mesajlar
5,037
Açılan Konu
485
Tepki puanı
75
Konum
SEO
PHP:
$vid = $_GET['id'];
$strSQL2 = "Delete  from video where id = $vid";
mysql_query($strSQL2);
$strSQL3 = "DELETE FROM `vote` WHERE vid =$vid";
mysql_query($strSQL3);

birincisi çalışıyor ikincisi çalışmıyor. Bunu nasıl çalıştırabilirim.

Oncelikle bu kodun guvenli olmadigini soylemekle ise baslayalim.
vote tablosundaki kolanlarin ne oldugunu buraya yazarmisin.
Asagidaki kodu calistirarak sonucu buraya postalarsan hatanin ne oldugunu anlamamiza yardim edecektir:

PHP:
$vid = mysql_real_escape_string ($_GET['id']);
$strSQL2 = "Delete from video where id = $vid";
mysql_query($strSQL2) or die(mysql_error());
$strSQL3 = "DELETE FROM vote WHERE vid = $vid";
mysql_query($strSQL3) or die(mysql_error());
 

hakimi

0
Onaylı Üye
Üye
Katılım
1 Temmuz 2006
Mesajlar
1,356
Açılan Konu
157
Tepki puanı
0
vote tablosu : id vid kez puan
$_GET['id'] = numerik, yani boşluk olamaz. hata vermiyor. video tablosundan siliyor ama vote tablosundan silmiyor.
 

hakimi

0
Onaylı Üye
Üye
Katılım
1 Temmuz 2006
Mesajlar
1,356
Açılan Konu
157
Tepki puanı
0
arkadaşlar ikisini de denedim ama ikiside sonuç vermedi. yine video dan siliyor ama vote dan silmiyor.
 

hakimi

0
Onaylı Üye
Üye
Katılım
1 Temmuz 2006
Mesajlar
1,356
Açılan Konu
157
Tepki puanı
0
döndürmüyor
 

hakimi

0
Onaylı Üye
Üye
Katılım
1 Temmuz 2006
Mesajlar
1,356
Açılan Konu
157
Tepki puanı
0
$p=mysql_query("Select * from vote where vid = '18440'");
$ki= mysql_fetch_array($p);
echo "$ki[id]";
bu çalıştı.
 

selim61

0
Onaylı Üye
Üye
Katılım
10 Mayıs 2006
Mesajlar
5,299
Açılan Konu
252
Tepki puanı
13
Konum
<?=selim61?>
hakimi o tabiki sonuç döndürecek vid = '18440' var çünkü.
senin yazdıgın sonuç döndürmüyor mesela
"DELETE FROM vote WHERE vid = $vid"
de ya vid $vid = $_GET['id']; değerini alamadı, yada aldıgı değer kayıtlı değil
 

selim61

0
Onaylı Üye
Üye
Katılım
10 Mayıs 2006
Mesajlar
5,299
Açılan Konu
252
Tepki puanı
13
Konum
<?=selim61?>
Eğer php.ini'deki "register_globals" satırı "Off" ise $_GET['vid'] ile veriyi alabilmen lâzım.
Eğer bahsettiğim o satır "On" ise doğrudan $vid olarak alabilirsin.

Diğer bir durum ise "register_long_arrays" satırının "Off" veya "On" olması.
Eğer Off ise $_GET['vid'] ile veriyi alabilirsin. On ise $_HTTP_GET_VARS['vid'] ile veriyi alabilirsin.
 

Caesar

0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Açılan Konu
83
Tepki puanı
7
Eğer php.ini'deki "register_globals" satırı "Off" ise $_GET['vid'] ile veriyi alabilmen lâzım.
Eğer bahsettiğim o satır "On" ise doğrudan $vid olarak alabilirsin.

Diğer bir durum ise "register_long_arrays" satırının "Off" veya "On" olması.
Eğer Off ise $_GET['vid'] ile veriyi alabilirsin. On ise $_HTTP_GET_VARS['vid'] ile veriyi alabilirsin.

adam ilk sorgunun calistigini soyluyor:) sen ne anlatmissin ehe

sorun kendisinde atladigi bir nokta var.
 

selim61

0
Onaylı Üye
Üye
Katılım
10 Mayıs 2006
Mesajlar
5,299
Açılan Konu
252
Tepki puanı
13
Konum
<?=selim61?>
adam ilk sorgunun calistigini soyluyor:) sen ne anlatmissin ehe

sorun kendisinde atladigi bir nokta var.

harbi ben orayı nie gözden kaçırdımki, neyse dursun bi köşede belki lazım olur :D
 

hakimi

0
Onaylı Üye
Üye
Katılım
1 Temmuz 2006
Mesajlar
1,356
Açılan Konu
157
Tepki puanı
0
arkadaşlar verem olacam. ne yaptıysam olmuyor.
PHP:
$strSQL2 = mysql_query("Delete  from video where id = '$vid'") or die(mysql_error());
$strSQL3=mysql_query("Delete from vote where vid = '$vid'") or die(mysql_error());
birincide sorun yok ama ikinci bir türlü dönmüyor.
Şimdi. video daki id vote da vid olarak kayda giriyor. yani $vid=$_GET['id']. bu değer alınıyor sorun yok. tekil ayrı bir dosyada da çalışıyor ama ikisini alt alta koydum mu çalışmıyor :(
 

Caesar

0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Açılan Konu
83
Tepki puanı
7
PHP:
$sorgu=mysql_query("delete from video,vote where video.id='".$vid."' and vote.vid='".$vid."'") or die(mysql_error());

dene birde.
 

hakimi

0
Onaylı Üye
Üye
Katılım
1 Temmuz 2006
Mesajlar
1,356
Açılan Konu
157
Tepki puanı
0
arkadaşlar herkese teşekkür ederim zaman harcıyorsunuz. Ama hala olmuyor anlamıyorum.
 

Caesar

0
Onaylı Üye
Üye
Katılım
5 Haziran 2006
Mesajlar
1,894
Açılan Konu
83
Tepki puanı
7
sinir geldi yemin ederim profilimden skype account ismimi alip gelirsen bakayım sorun nerde imiş.
 

hakimi

0
Onaylı Üye
Üye
Katılım
1 Temmuz 2006
Mesajlar
1,356
Açılan Konu
157
Tepki puanı
0
Arkadaşlar herkesten özür dilerim. Sorun benim dreamweaver daymış. ben değişikleri yapıyordum kaydediyordum ama o kaydetmiyormuş. BAzen yapıyordu ve bu akşam da öyle olmuş. Ayrıca yardımcı olan tüm arkadaşlara ve özellikle Ceasar a çok teşekkür ederim.
Sorun çözüldü :)
 
Üst