• 15-08-2013, 13:35:49
    #1
    Beyler selam hazırlamış olduğum sistemde ' karakteri kullandığımda veriyi veritabanına yazdıramıyorum.
    stripslashes fonksiyonunu kullanıyorum ancak yine olmuyor yada ben yanlış yerde kullandım fonksiyonu ?

    PROJE EKLEME SAYFAMIZ

    		<div id="content" class="box">
    			<h1>Tamamlanan Proje Ekle</h1>
    			<br>
    			<?php
    			include("plugin/t_projeadd.php"); ?>
    
    						<form method="post">
    
    						<div class="col50">
    			
    		<p class="t-justify">   		
    						<label><b>Proje Başlık</b></label><br>
    						<input type="text" name="baslik" class="dsaciklama" /><br><br>
    						<label><b>Yükleyeceğiniz resim boyutu ortalama 836x420 pixel olmalıdır.</b></label></br></br>
    						<label><b>Başlık İçin Resim Ekle</b></label> <a onclick="window.open('upload/upload.php','Upload','width=460,height=340,scrollbars=1');return false;" href="">Resim Yükle</a><br>
    						<input type="text" name="resimyolu" class="dsaciklama" /><br><br>
    						
    						<label><b>İçerik</b></label> <a onclick="window.open('upload/upload.php','Upload','width=460,height=340,scrollbars=1');return false;" href="">Resim Yükle</a><br>
    						<textarea cols="84" rows="10" name="content" id="elm1" class="input-text"></textarea><br>							
    				</p>
    				
    			</div> 
    
    			<div class="fix"></div>						
    
    			<input type="submit" class="bt" name="gonder" value="Projeyi Ekle" />
    						</form>			
    			<br>
    		</div>
    t_projeadd.php

    <?php
    
    function temizle($url)
    {
    $url = trim($url);
    $find = array('<b>', '</b>');
    $url = str_replace ($find, '', $url);
    $url = preg_replace('/<(\/{0,1})img(.*?)(\/{0,1})\>/', 'image', $url);
    $find = array(' ', '&amp;quot;', '&amp;amp;', '&amp;', '\r\n', '\n', '/', '\\', '+', '<', '>');
    $url = str_replace ($find, '-', $url);
    $find = array('.','..', '...');
    $url = str_replace ($find, '', $url);
    $find = array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ë', 'Ê');
    $url = str_replace ($find, 'e', $url);
    $find = array('í', 'ý', 'ì', 'î', 'ï', 'I', 'Ý', 'Í', 'Ì', 'Î', 'Ï','İ','ı');
    $url = str_replace ($find, 'i', $url);
    $find = array('ó', 'ö', 'Ö', 'ò', 'ô', 'Ó', 'Ò', 'Ô');
    $url = str_replace ($find, 'o', $url);
    $find = array('á', 'ä', 'â', 'à', 'â', 'Ä', 'Â', 'Á', 'À', 'Â');
    $url = str_replace ($find, 'a', $url);
    $find = array('ú', 'ü', 'Ü', 'ù', 'û', 'Ú', 'Ù', 'Û');
    $url = str_replace ($find, 'u', $url);
    $find = array('ç', 'Ç');
    $url = str_replace ($find, 'c', $url);
    $find = array('þ', 'Þ','ş','Ş');
    $url = str_replace ($find, 's', $url);
    $find = array('ð', 'Ð','ğ','Ğ');
    $url = str_replace ($find, 'g', $url);
    $find = array('/[^A-Za-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
    $repl = array('', '-', '');
    $url = preg_replace ($find, $repl, $url);
    $url = str_replace ('--', '-', $url);
    $url = strtolower($url);
    return $url;
    }
    
    if(isset($_POST["gonder"])){
    	
    $baslik = $_POST['baslik'];
    $content = $_POST['content'];
    $resimyolu = $_POST['resimyolu'];
    
    if($baslik==""||$content==""||$resimyolu==""){
    
    	echo '<div class="error msg" style="width:300px;">
    			<b>Bütün alanları doldurmanız gerekmektedir.</b>
    				</div>';
    }else{
    
    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER SET utf8");
    mysql_query("SET COLLATION_CONNECTION = 'utf8_bin'");
    $query = mysql_query("insert into t_products(baslik,content,resimyolu) values('$baslik','$content','$resimyolu')"); 
    
     echo "	<div class='done msg' style='width:200px;'>
    		<b>Proje Eklendi!</b>
    			</div>";
    	 } }
    ?>
  • 15-08-2013, 14:05:11
    #2
    Üyeliği durduruldu
    Alıntı
    $query = mysql_query("insert into t_products(baslik,content,resimyolu) values('".$baslik."','".$content."','".$resimyolu. "')");
    dener misin ?
  • 15-08-2013, 14:17:32
    #3
    <?php 
    
    function temizle($url) 
    { 
    $url = trim($url); 
    $find = array('<b>', '</b>'); 
    $url = str_replace ($find, '', $url); 
    $url = preg_replace('/<(\/{0,1})img(.*?)(\/{0,1})\>/', 'image', $url); 
    $find = array(' ', '&amp;quot;', '&amp;amp;', '&amp;', '\r\n', '\n', '/', '\\', '+', '<', '>'); 
    $url = str_replace ($find, '-', $url); 
    $find = array('.','..', '...'); 
    $url = str_replace ($find, '', $url); 
    $find = array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ë', 'Ê'); 
    $url = str_replace ($find, 'e', $url); 
    $find = array('í', 'ý', 'ì', 'î', 'ï', 'I', 'Ý', 'Í', 'Ì', 'Î', 'Ï','İ','ı'); 
    $url = str_replace ($find, 'i', $url); 
    $find = array('ó', 'ö', 'Ö', 'ò', 'ô', 'Ó', 'Ò', 'Ô'); 
    $url = str_replace ($find, 'o', $url); 
    $find = array('á', 'ä', 'â', 'à', 'â', 'Ä', 'Â', 'Á', 'À', 'Â'); 
    $url = str_replace ($find, 'a', $url); 
    $find = array('ú', 'ü', 'Ü', 'ù', 'û', 'Ú', 'Ù', 'Û'); 
    $url = str_replace ($find, 'u', $url); 
    $find = array('ç', 'Ç'); 
    $url = str_replace ($find, 'c', $url); 
    $find = array('þ', 'Þ','ş','Ş'); 
    $url = str_replace ($find, 's', $url); 
    $find = array('ð', 'Ð','ğ','Ğ'); 
    $url = str_replace ($find, 'g', $url); 
    $find = array('/[^A-Za-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/'); 
    $repl = array('', '-', ''); 
    $url = preg_replace ($find, $repl, $url); 
    $url = str_replace ('--', '-', $url); 
    $url = strtolower($url); 
    
    return $url; 
    } 
    
    function sqlclean($txt) {
    
    if (get_magic_quotes_gpc())
        $txt= stripslashes($txt);
    
    $txt= mysql_real_escape_string($txt);
    return $txt;
    }
    
    if(isset($_POST["gonder"])){ 
         
    $baslik = sqlclean($_POST['baslik']); 
    $content = sqlclean($_POST['content']); 
    $resimyolu = $_POST['resimyolu']; 
    
    if($baslik==""||$content==""||$resimyolu==""){ 
    
        echo '<div class="error msg" style="width:300px;"> 
                <b>Bütün alanları doldurmanız gerekmektedir.</b> 
                    </div>'; 
    }else{ 
    
    mysql_query("SET NAMES 'utf8'"); 
    mysql_query("SET CHARACTER SET utf8"); 
    mysql_query("SET COLLATION_CONNECTION = 'utf8_bin'"); 
    $query = mysql_query("insert into t_products(baslik,content,resimyolu) values('$baslik','$content','$resimyolu')");  
    
     echo "    <div class='done msg' style='width:200px;'> 
            <b>Proje Eklendi!</b> 
                </div>"; 
         } } 
    ?>
    Deneyin hocam.
  • 15-08-2013, 15:03:54
    #4
    Sağolun arkadaşlar.
    sewakldawk sizinki oldu hocam
  • 15-08-2013, 15:04:06
    #5
    MehmetKS adlı üyeden alıntı: mesajı görüntüle
    Beyler selam hazırlamış olduğum sistemde ' karakteri kullandığımda veriyi veritabanına yazdıramıyorum.
    stripslashes fonksiyonunu kullanıyorum ancak yine olmuyor yada ben yanlış yerde kullandım fonksiyonu ?

    PROJE EKLEME SAYFAMIZ

    		<div id="content" class="box">
    			<h1>Tamamlanan Proje Ekle</h1>
    			<br>
    			<?php
    			include("plugin/t_projeadd.php"); ?>
    
    						<form method="post">
    
    						<div class="col50">
    			
    		<p class="t-justify">   		
    						<label><b>Proje Başlık</b></label><br>
    						<input type="text" name="baslik" class="dsaciklama" /><br><br>
    						<label><b>Yükleyeceğiniz resim boyutu ortalama 836x420 pixel olmalıdır.</b></label></br></br>
    						<label><b>Başlık İçin Resim Ekle</b></label> <a onclick="window.open('upload/upload.php','Upload','width=460,height=340,scrollbars=1');return false;" href="">Resim Yükle</a><br>
    						<input type="text" name="resimyolu" class="dsaciklama" /><br><br>
    						
    						<label><b>İçerik</b></label> <a onclick="window.open('upload/upload.php','Upload','width=460,height=340,scrollbars=1');return false;" href="">Resim Yükle</a><br>
    						<textarea cols="84" rows="10" name="content" id="elm1" class="input-text"></textarea><br>							
    				</p>
    				
    			</div> 
    
    			<div class="fix"></div>						
    
    			<input type="submit" class="bt" name="gonder" value="Projeyi Ekle" />
    						</form>			
    			<br>
    		</div>
    t_projeadd.php

    <?php
    
    function temizle($url)
    {
    $url = trim($url);
    $find = array('<b>', '</b>');
    $url = str_replace ($find, '', $url);
    $url = preg_replace('/<(\/{0,1})img(.*?)(\/{0,1})\>/', 'image', $url);
    $find = array(' ', '&amp;quot;', '&amp;amp;', '&amp;', '\r\n', '\n', '/', '\\', '+', '<', '>');
    $url = str_replace ($find, '-', $url);
    $find = array('.','..', '...');
    $url = str_replace ($find, '', $url);
    $find = array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ë', 'Ê');
    $url = str_replace ($find, 'e', $url);
    $find = array('í', 'ý', 'ì', 'î', 'ï', 'I', 'Ý', 'Í', 'Ì', 'Î', 'Ï','İ','ı');
    $url = str_replace ($find, 'i', $url);
    $find = array('ó', 'ö', 'Ö', 'ò', 'ô', 'Ó', 'Ò', 'Ô');
    $url = str_replace ($find, 'o', $url);
    $find = array('á', 'ä', 'â', 'à', 'â', 'Ä', 'Â', 'Á', 'À', 'Â');
    $url = str_replace ($find, 'a', $url);
    $find = array('ú', 'ü', 'Ü', 'ù', 'û', 'Ú', 'Ù', 'Û');
    $url = str_replace ($find, 'u', $url);
    $find = array('ç', 'Ç');
    $url = str_replace ($find, 'c', $url);
    $find = array('þ', 'Þ','ş','Ş');
    $url = str_replace ($find, 's', $url);
    $find = array('ð', 'Ð','ğ','Ğ');
    $url = str_replace ($find, 'g', $url);
    $find = array('/[^A-Za-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
    $repl = array('', '-', '');
    $url = preg_replace ($find, $repl, $url);
    $url = str_replace ('--', '-', $url);
    $url = strtolower($url);
    return $url;
    }
    
    if(isset($_POST["gonder"])){
    	
    $baslik = $_POST['baslik'];
    $content = $_POST['content'];
    $resimyolu = $_POST['resimyolu'];
    
    if($baslik==""||$content==""||$resimyolu==""){
    
    	echo '<div class="error msg" style="width:300px;">
    			<b>Bütün alanları doldurmanız gerekmektedir.</b>
    				</div>';
    }else{
    
    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER SET utf8");
    mysql_query("SET COLLATION_CONNECTION = 'utf8_bin'");
    $query = mysql_query("insert into t_products(baslik,content,resimyolu) values('$baslik','$content','$resimyolu')"); 
    
     echo "	<div class='done msg' style='width:200px;'>
    		<b>Proje Eklendi!</b>
    			</div>";
    	 } }
    ?>
    $query değişkenini aşağıdaki gibi değiştirirseniz sorun kalmaz.

    			$query = mysql_query("insert into t_products
    			SET baslik = " .mysql_escape_string($baslik) . ",
    			content= " .mysql_escape_string($content) . ",
    			resimyolu= " .mysql_escape_string($resimyolu) . " ");