• 25-03-2014, 12:08:58
    #10
    $update = mysql_query("UPDATE uyeler SET ad = '$ad', soyad = '$soyad', kullaniciadi = '$kullaniciadi', email = '$email', sehir = '$sehir', avatar = '$avatar' WHERE id = '$id'");
    if($update) {
    echo "Bilgileriniz güncellenemedi, lütfen tekrar deneyin!";
    } else {
    echo "Bilgileriniz Güncellendi.";
    }


    diğer sorunları incelemedim ama şurdaki kod dikkatimi çekti burdaki if tam tersi olması gerekmiyo mu :S
  • 25-03-2014, 12:44:04
    #11
    U_uR adlı üyeden alıntı: mesajı görüntüle
    $update = mysql_query("UPDATE uyeler SET ad = '$ad', soyad = '$soyad', kullaniciadi = '$kullaniciadi', email = '$email', sehir = '$sehir', avatar = '$avatar' WHERE id = '$id'");
    if($update) {
    echo "Bilgileriniz güncellenemedi, lütfen tekrar deneyin!";
    } else {
    echo "Bilgileriniz Güncellendi.";
    }


    diğer sorunları incelemedim ama şurdaki kod dikkatimi çekti burdaki if tam tersi olması gerekmiyo mu :S
    Evet ya da if(!$update) olması lazım.
  • 25-03-2014, 18:45:38
    #12
    sersat adlı üyeden alıntı: mesajı görüntüle
    No database Selected Yani database tablosu yok mysql bağlantılarınızı ve tablolarınızı kontrol edermisiniz.
    Hallettim hocam sorunu. Bağlantı dosyasındanmış sorun.

    $sunucu = "localhost"; //sunucu
    $kullanici = "root"; //veritabani kullanici adi
    $parola = ""; // veritabani sifresi
    $veritabani = "";// veritabani ismi 
    $baglanti = mysql_connect($sunucu, $kullanici, $parola); 
    
    if(!$baglanti) die("MySQL sunucusuna baglanti saglanamadi!"); 
    
    mysql_select_db($veritabani, $baglanti) or die ("Veritabanina baglanti saglanamadi!");

    U_uR adlı üyeden alıntı: mesajı görüntüle
    $update = mysql_query("UPDATE uyeler SET ad = '$ad', soyad = '$soyad', kullaniciadi = '$kullaniciadi', email = '$email', sehir = '$sehir', avatar = '$avatar' WHERE id = '$id'");
    if($update) {
    echo "Bilgileriniz güncellenemedi, lütfen tekrar deneyin!";
    } else {
    echo "Bilgileriniz Güncellendi.";
    }


    diğer sorunları incelemedim ama şurdaki kod dikkatimi çekti burdaki if tam tersi olması gerekmiyo mu :S
    evet hocam düzelttim if kodlarını. İşlem başarısız olsada "Bilgileriniz Güncellendi" diyordu
  • 27-03-2014, 09:50:39
    #13
    eraykaratas adlı üyeden alıntı: mesajı görüntüle
    Merhaba yeni sayılırım php de, öğrenmek için bir script yazıyorum kendime. Güncelleme konusunda sorunum var. Kodlar aşağıdadır, ne yaptıysam bu şekilde güncelleme gerçekleştiremedim. Nerde ne yanlıştır, nasıl güncelleme yapabilirim beni bilgilendirirseniz memnun olurum.

    sets.php Sayfam

    <?ob_start();?>
    <?php
    include "config.php";
    
    if( $giris_yapildimi == 'hayir' ) {
    	header("Location: login.php");
    	die("Yönlendirilmiş olmalıydın!!!");
    }
    
    id
    
    ?>
    <html>
    <head>
     <title>Ayarlar - </title>
     <link rel="stylesheet" type="text/css" href="style.css" />
     <link rel="shortcut icon" href="images/fav.ico">
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    </head>
    <body>
    <div id="yapi">
    <?php include('header.php');?>
    <div class="icerik">
    
    <h1>Ayarlar</h1>
    
    <div class="ayarlarform">
    <form action="sets.php" method="post">
    <input type="hidden" name="guncelle" value="2">
    
    <fieldset>
    <legend>Adınız</legend>
    <input type="text" name="ad" id="ad" value="<?=$uyebilgi["ad"];?>">
    </fieldset>
    
    <fieldset>
    <legend>Soyadınız</legend>
    <input type="text" name="soyad" id="soyad" value="<?=$uyebilgi["soyad"];?>">
    </fieldset>
    
    <fieldset>
    <legend>Email</legend>
    <input type="text" name="email" id="email" value="<?=$uyebilgi["email"];?>">
    </fieldset>
    
    <fieldset>
    <legend>Şehriniz</legend>
    <input type="text" name="sehir" id="sehir" value="<?=$uyebilgi["sehir"];?>">
    </fieldset>
    
    <fieldset>
    <legend>Avatar URL</legend>
    <input type="text" name="avatar" id="avatar" value="<?=$uyebilgi["avatar"];?>">
    </fieldset>
    
    <fieldset>
    <input type="submit" class="guncelle" value="Güncelle">
    </fieldset>
    </form>
    </div>
    
    <ul>
    <li>Adınız en az 3 en fazla 15 karakter olabilir.</li>
    <li>Soyadınız en az 2 en çok 21 karakter olabilir.</li>
    <li>Aktif bir e-posta hesabı girmeniz sizinle iletişim kurabilmemiz için önemlidir.</li>
    <li>Şehiriniz en az 3 en çok 14 karakter olabilir.</li>
    <li>Avatar boyutu 100X100 boyutlarında olmalıdır.</li>
    <ul>
    
    <?php
    if( isset($_POST["guncelle"]) && $_POST["guncelle"] == "2" ) {
    	// strip_tags(html kaldır), trim(boşluk kaldır), dbtrim(tırnak sorunu)
    	$ad = strip_tags(trim(dbtrim($_POST["ad"])));
    	$soyad = strip_tags(trim(dbtrim($_POST["soyad"])));
    	$kullaniciadi = strip_tags(trim(dbtrim($_POST["kullaniciadi"])));
    	$email = strip_tags(trim(dbtrim($_POST["email"])));
    	$sehir = strip_tags(trim(dbtrim($_POST["sehir"])));
    	$avatar = strip_tags(trim(dbtrim($_POST["avatar"])));
    echo "<div class='bilgi'>";
    	if( strlen($ad) < 3 || strlen($ad) > 15 ) {
    		echo "Adınız en az 3 en çok 15 karakter olmalıdır!";
    	} else if( strlen($soyad) < 2 || strlen($soyad) > 21 ) {
    		echo "Soyadınız en az 2 en çok 21 karakter olmalıdır!";
    	} else if( strlen($sehir) < 3 || strlen($sehir) > 14 ) {
            echo "Şehriniz en az 3 en çok 14 karakter olmalıdır!";	
    	} else if( !filter_var($email, FILTER_VALIDATE_EMAIL) ) {
            echo "Geçerli bir eposta girmelisiniz!";
    	} else {
    		// veritabanına ekle
    		$update = mysql_query("UPDATE uyeler SET ad = '$ad', soyad = '$soyad', kullaniciadi = '$kullaniciadi', email = '$email', sehir = '$sehir', avatar = '$avatar' WHERE id = '$id'");
    		if($update) {
    			echo "Bilgileriniz güncellenemedi, lütfen tekrar deneyin!";
    		} else {
    			echo "Bilgileriniz Güncellendi.";
    		}
    	}
    echo "</div>";	
    }
    ?>
    
    </div>
    <?php include('footer.php');?>
    </div>
    </body>
    </html>
    <?php ob_end_flush(); ?>
    config.php Sayfam(Üyelik sistemini hazır olarak tasarımıma entegre ettim) fonksiyonlar beni aşıyor

    <?ob_start();?>
    <?php
    // Veritabanı ayarları
    $mysql_data = array(
    	"host" => "localhost",
    	"name" => "db",
    	"user" => "root",
    	"pass" => "",
    );
    // Kullanılan php versiyonu
    $php_version = (int) phpversion();
    
    if( $php_version >= 5 ) {
    	$db = @new mysqli($mysql_data["host"], $mysql_data["user"], $mysql_data["pass"], $mysql_data["name"]);
    
    	if( $db->connect_errno ) {
    		// eğer bağlantı hatası varsa yazdıralım
    		die( $db->connect_error );
    	}
    } else {
    	header("Content-type:text/html;charset=ISO-8859-9");
    	// Versiyon PHP5'den geride!
    	die("Artık PHP5 kullanıyoruz! Yenilikçi ol, sistemini güncelle :)");
    }
    
    
    $cookie_id = "uyekontrolid";
    
    if( isset($_COOKIE[$cookie_id]) && dbcount("id", "uyeler", "token=".dbexport($_COOKIE[$cookie_id])) ) {
    	$giris_yapildimi = 'evet';
    	$result = dbquery("SELECT * FROM uyeler WHERE token=".dbexport($_COOKIE[$cookie_id]));
    	$uyebilgi = $result->fetch_assoc();
    } else {
    	$giris_yapildimi = 'hayir';
    	$uyebilgi = array();
    }
    
    
    
    // bu bir ID mi?
    function idval($num=0, $greaterthan=0) {
    	if(!is_numeric($greaterthan)) $greaterthan = 0;
    	return (intval($num) > $greaterthan && is_numeric($num) ? (intval($num)==0?"0":intval($num)) : "0" );
    }
    function dbtrim($par) {
        return str_replace(array("'","\""), array("'","&quot;"), $par);
    }
    function dbuntrim($par) {
        return str_replace(array("'","&quot;"), array("'","\""), $par);
    }
    function dbexport($x='') {return var_export($x, true);}
    
    // query
    function dbquery($query) {
    	global $db;
    	$sorgu = $db->query($query);
    	if( !$sorgu || $db->errno > 0 ) {
    		die( $db->error );
    	} else {
    		return $sorgu;
    	}
    }
    function dbinsert($tablo, $datalist) {
    	global $db;
        if(is_array($datalist)):
            $alanlar = array_keys($datalist);
            $alan = implode(',', $alanlar); 
            $veri = implode(", ",array_map('dbexport', $datalist));
        else:
            $parametreler = func_get_args();
            $tablo = array_shift($parametreler);
            $alan = $veri = null;
            $toplamParametre = count($parametreler)-1;
            foreach($parametreler as $NO => $parametre):
                $bol = explode('=', $parametre, 2);
                if($toplamParametre == $NO):
                    $alan .= $bol[0];
                    $veri .= dbexport($bol[1]);
                else:
                    $alan .= $bol[0].',';
                    $veri .= dbexport($bol[1]);
                endif;
            endforeach;
        endif;
    
        $sonuc = dbquery('INSERT INTO '.$tablo.' ('.$alan.') VALUES ('.$veri.')');
        if($sonuc)
            return $db->insert_id;
        else
        	return "0";
    }
    function dbdelete($tablo, $kosul = null) {
        if($kosul):
            if(is_array($kosul)):
                $kosullar = array();
                foreach($kosul as $alan => $veri)
                    $kosullar[] = $alan.'='.dbexport($veri);
            endif;
            return dbquery('DELETE FROM '.$tablo.' WHERE '.(is_array($kosul)?implode(' AND ',$kosullar):$kosul));
        else:
            return dbquery('TRUNCATE TABLE '.$tablo);
        endif;
    }
    function dbupdate($tablo, $deger, $kosul) {
        if(is_array($deger)):
            $degerler = array();
            foreach($deger as $alan => $veri)
                $degerler[] = $alan."=".dbexport($veri);
        endif;
        
        if(is_array($kosul)):
            $kosullar = array();
            foreach($kosul as $alan => $veri)
                $kosullar[] = $alan."=".dbexport($veri);
        endif;
        
        return dbquery('UPDATE '.$tablo.' SET '.(is_array($deger) ? implode(',',$degerler):$deger).' WHERE '.(is_array($kosul)?implode(' AND ',$kosullar):$kosul));
    }
    // dbcount('id', 'tablo', "id='".idval($id1)."'")
    function dbcount($field, $table, $conditions = "") {
    	global $db;
    	$cond = ($conditions ? " WHERE ".$conditions : "");
    	$result = dbquery("SELECT COUNT(".$field.") as t FROM ".$table.$cond);
    	if (!$result) {
    		die( $db->error );
    		return false;
    	} else {
    		$rows = $result->fetch_array(MYSQLI_NUM);
    		return $rows[0];
    	}
    }
    function create_token($length=11) {
        /*for($i=0; $i < $length; $i++) {
            $key .= $keys[array_rand($keys)];
        }
        return $key;*/
        $keys = implode('', array_merge(range('A', 'Z'), range(0,9), range('a', 'z')));
        do {
        	$token = substr(str_shuffle($keys), 0, $length);
        	$say = dbcount( "id", "uyeler", "token='".$token."'" );
        } while( $say > 1 );
        return $token;
    }
    # password encoder
    function create_password($password='') {
    	// ($password-length * 5) times
    	$times = strlen($password) * 18;
    	$pass = $password;
    	for( $i=0; $i<=$times; $i++ ) {
    		$pass = md5($pass);
    	}
    	return $pass;
    }
    ?>

    Hocam merhabalar ,

    2. kodlama bloğunuzda neden ob_start(); kodu için bir php tagı açıp sonra kapatıp tekrar php tagı açtınız ? merak ettim doğrusu yeni başlamış olsanız bile size tavsiyem kod yapınız & kod düzeninizi çok iyi ayarlayın düzenli ve temiz olsun gereksiz şeylerden kaçının.
  • 27-03-2014, 21:06:15
    #14
    BR9 adlı üyeden alıntı: mesajı görüntüle
    Hocam merhabalar ,

    2. kodlama bloğunuzda neden ob_start(); kodu için bir php tagı açıp sonra kapatıp tekrar php tagı açtınız ? merak ettim doğrusu yeni başlamış olsanız bile size tavsiyem kod yapınız & kod düzeninizi çok iyi ayarlayın düzenli ve temiz olsun gereksiz şeylerden kaçının.
    Tavsiye için teşekkürler. Gözden kaçırmışım, sil ekle sil ekle derken oda ayrı tagda kalmış.