herkese selam
ignele.php
duzenle.php
diye formlarım var.
ignele.php'de bir sorun yok ama duzenle.php de güncelleştirme yaparken ' işaretini kullanamıyorum.
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near..
şeklinde hata veriyor. ; , " gibi işaretleri kabul ediyor ama ' olmuyor.
yardım ederseniz sevinirim.
Textarea'da tırnaklar
40
●5.099
- 09-05-2007, 14:09:17Üyeliği durduruldu' karkterinden kaçış yok ama şöyle birşey önerebilirim
function kodlaracevir($metin) { $ara = array("\"", "'", "\\", '\"', "\'", "<", ">", " "); $degistir = array(""", "'", "\", """, "'", "<", ">", " "); $metin = str_replace($ara, $degistir, $metin); return $metin; } - 09-05-2007, 14:16:44Misafiraddslashes ??
Example 2334. An addslashes() example
<?php $str = "Is your name O'reilly?"; // Outputs: Is your name O\'reilly? echo addslashes($str); ?>
- 09-05-2007, 14:38:58Üyeliği durdurulduposttan gelen her veride bu sorunu yaşarsın sql e eklerken yapacağın şey
foreach($_POST as $sa=>$ho) $_POST[$sa]=addslashes($_POST[$sa]);
bunu veri eklerken mysql_query("insert into .... dan önce koymalısın
veri okurkende mysql_fetch_Array ve ya fetch_assoc ile okuyup
hemen sqlden geleni php arraylarına döktükten sonra
(Ör: $gel=mysql_fetch_array($sorgu); & $gel=mysql_fetch_assoc($sorgu); )
foreach($gel as $sa=>$ho) $gel[$sa]=stripslashes($gel[$sa]);
gibi yapıp sql e eklerken ' => \' , " => \" yaparsın
okurkende tam tersi syntax engeline takılmamış olursun
- 09-05-2007, 16:25:04Üyeliği durduruldu
function atislas($veri){ if (!get_magic_quotes_gpc()) { $veri = addslashes($veri); } return $veri; }yukarıdaki kodu eklersin mesela $_POST['deneme'] değişkeninde tırnak vb. kullanılması durumu var veya kullanılma ihtimali var.
$_POST['deneme']=atislas($_POST['deneme']); veya isim değiştirip
$deneme=atislas($_POST['deneme']);
şeklinde filtreden geçirdikten sonra işlem rahat yapabilirsin.