• 01-11-2015, 01:26:38
    #1
    Merhaba arkadaşlar bir akrabama ödevinde yardımcı oluyorum bir sinema scripti yazıyoruz. Sitenin 1 bölümü hariç tamamı bitti kalan kısımda koltuk seçilen bölüm. Sorunu anlatıcak olursam rezervasyon kısmını kodluyamadık ve internetten bulduğumuz bir scripti entegre etmeye çalıştık sistem çok basit koltuk seçiyorsun adımızı soruyor yazıyoruz ve rezerve et butonuna bastıktan sonra veritabanına kaydediyor kaydediyor fakat sistemde salon ayrımı yapılmamış ve bende bu salon ayrımını yapamadım. Yardımcı olursanız sevinirim.

    Salon Tablosu;




    Rezervasyon Script Kodları ;
    <?php 
    error_reporting(E_ALL ^ E_NOTICE);
    ini_set('error_reporting', E_ALL ^ E_NOTICE);
    error_reporting(E_ALL);
    error_reporting(0);
    
    	$salon = @$_GET['salonad'];
    	include("mysql.php");
    ?>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-9" />
    <title>Rezervasyon Sistemi</title>
    </head>
    <link href="css.css" rel="stylesheet" type="text/css" />
    <form action="rezervasyon.php?salonad=<?php echo $salon; ?>" method="post">
    <body>
    <table border="1" align="center">
    <tr>
    <tr> <div align="center">Lutfen Koltugunuzu Seciniz<div valign="bottom" align="center">Mavi koltuklar rezerve edilmiş koltuklardır.</div><div valign="bottom" align="center">Salon : <?php echo $salon;?></div></div>
    <?php
    if(isset($_POST['btn3'])){
    if($_POST['btn3']=='Rezerve Et'){
    $sorgu="INSERT INTO salon(salonad,koltuk,kulad) VALUES('".$salon."','".$_POST[btnad]."','".$_POST[ad]."')";
    mysql_query($sorgu);
    }
    }
    $dizi=array("Z20");
    $sorgu1="SELECT koltuk FROM salon";
    $giden1=mysql_query($sorgu1);
    $sq=0;
    while($gelen1=mysql_fetch_array($giden1)){
    $dizi[$sq]=$gelen1[0];
    $sq++;
    }
    for($i=0;$i<=99;$i++){
    if($i%10==0){
    $k=chr(round($i/10)+65);
    echo "<tr><td bgcolor=\"orange\">".$k;
    }
    $j=($i%10)+1;
    foreach($dizi as $deger){
    if($deger=="$k$j"){
    $each=1;
    break;
    }
    else{
    $each=0;
    }
    }
    if($each==1){
    echo "<td bgcolor=\"grey\"><input type=\"submit\" disabled=\"false\" class=\"awesome2\" name=\"btn\" value=\"$k$j\" /></td>";
    }
    else{
    echo "<td bgcolor=\"grey\"><input type=\"submit\" class=\"awesome\" name=\"btn\" value=\"$k$j\" /></td>";
    }
    }
    
    ?>
    </td>
    </tr>
    </table>
    <div align="center">
    <?php
    if(isset($_POST['btn3'])){
    if($_POST['btn3']=='Rezerve Et'){
    echo "<h3>İşlem Başarıyla Tamamlandı.";
    echo "<br>Lütfen satın almak için admin ile iletişime geçin <br>Aksi takdirde rezervasyon iptal edilecektir";
    }}
    if(isset($_POST['btn2'])){
    if($_POST['btn2']=='EVET'){
    echo "<div align=\"center\"><h4><br>Koltuk Basariyla Rezerve Edildi.</h4></div>";
    echo "Lütfen işlemi tamamlamak için bilgilerinizi giriniz.<br>";
    echo "AdSoyad:<input type=\"text\" name=\"ad\">";
    echo "<br>Koltuk No:". $_POST['btnad'];
    $btnad=$_POST['btnad'];
    echo "<input type=\"hidden\" name=\"btnad\" value=\"$btnad\">";
    echo "<br><input type=\"submit\" name=\"btn3\" value=\"Rezerve Et\" ><input type=\"submit\" name=\"btn3\" value=\"Iptal\" >";
    }
    if($_POST['btn2']=='HAYIR'){
    echo "<br><div align=\"center\"><h4>Koltuk Rezerve Edilmedi.</h4></div>";
    }
    }
    if(isset($_POST['btn'])){
    $btnad=$_POST['btn'];
    echo "<div align=\"center\"<br><h4>".$_POST['btn']." Numaralı Koltugu sectiniz rezerve etmek ister misiniz?</h4></div>";
    echo '<br><div align="center"> <input type="submit" name="btn2" value="EVET"> <input type="submit" name="btn2" value="HAYIR"></div>';
    echo "<input type=\"hidden\" name=\"btnad\" value=\"$btnad\">";
    }
    ?>
    </div>
    <br><br><br> 
    </body>
    </form>
    </html>
  • 01-11-2015, 02:11:01
    #2
    Salon ayrımından kastınız nedir? Gördüğüm kadarıyla salon da veritabanına ekleniyor.

    Ayrıca şu ;
    if(isset($_POST['btn2'])){
    if($_POST['btn2']=='EVET'){
    dikkatimi çekti. Bu sistemi hazırlarken bir şeyler de öğreniyorsunuzdur muhtemelen ondan belirteyim. btn2 eğer bi şeyse(evet hayır vs.) zaten isset'tir. yani önce set olduğunu kontrol edip sonra onun bi şeye eşit olduğunu kontrol etmek spagetti koddan başka bir şey değil. Onları ve kapanış } karşılıklarını silebilirsiniz.

    Kolaylıklar.
  • 01-11-2015, 04:38:17
    #3
    Reveloper
    Tepedeki:

    error_reporting(E_ALL ^ E_NOTICE);
    ini_set('error_reporting', E_ALL ^ E_NOTICE);
    error_reporting(E_ALL);
    error_reporting(0);
    betiği aşağıdakiyle değiştir bakalım ne hata verecek

    error_reporting(1);
  • 01-11-2015, 11:59:31
    #4
    bluexpres adlı üyeden alıntı: mesajı görüntüle
    Salon ayrımından kastınız nedir? Gördüğüm kadarıyla salon da veritabanına ekleniyor.

    Ayrıca şu ;
    if(isset($_POST['btn2'])){
    if($_POST['btn2']=='EVET'){
    dikkatimi çekti. Bu sistemi hazırlarken bir şeyler de öğreniyorsunuzdur muhtemelen ondan belirteyim. btn2 eğer bi şeyse(evet hayır vs.) zaten isset'tir. yani önce set olduğunu kontrol edip sonra onun bi şeye eşit olduğunu kontrol etmek spagetti koddan başka bir şey değil. Onları ve kapanış } karşılıklarını silebilirsiniz.

    Kolaylıklar.
    Hocam kodları inceledim ama bulamadım salon ayrımından kastım rezervasyon.php?salon=x Tüm salonlarda alınan koltuklar salon numarası ne olursa olsun alınmış gözüküyor.

    Yani 11. salonda A1 koltuğunu aldıysam 12. salonda A1 koltuğunu alamıyorum.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 10:47:26 -->-> Daha önceki mesaj 10:39:36 --

    Burti adlı üyeden alıntı: mesajı görüntüle
    Tepedeki:

    error_reporting(E_ALL ^ E_NOTICE);
    ini_set('error_reporting', E_ALL ^ E_NOTICE);
    error_reporting(E_ALL);
    error_reporting(0);
    betiği aşağıdakiyle değiştir bakalım ne hata verecek

    error_reporting(1);
    Hata vermiyor hocam

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 10:59:31 -->-> Daha önceki mesaj 10:47:26 --

    Hallettim arkadaşlar Select komutuna WHERE salonad = '".$salon."' ekleyince halletmiş oldum.
  • 01-11-2015, 12:53:22
    #5
    Başka scripti kullanıyorsunuz. O zaman o scripti değiştirmeniz lazım.
    Kullandığınız script tek mekan üzerinden rezervasyon yapmak üzerine yazılmış sanırım.
    Bunu çoklu mekan olacak şekilde değiştirmeniz lazım.
    Salon diye bir tablo açacaksınız.
    Bu tablonun bir id'si, bir ismi, gerekirse, koltuk sayısı, koltuk numarası ve fiyat değişikliği varsa fiyat gibi alanları olacak.
    Sonra insanlara salonları listeleyeceksin.
    Bir kullanıcı salonu seçip rezervasyon yapmak istediğinde, rezervasyon kaydının tutulduğu tabloya ekleyeceğin salon id alanı ile hangi salonda rezervasyon yapıldığını bulacaksın.
    Muhtemelen rezervasyoon kaydı eklenmeden bu koltukta kayıt var mı diye bir bir sorgu vardır. O sorguyu da salon_id ile bu rezervasyon bu salonda var mı diye kontrol edecek hale getirirseniz başka salona kayıt açılabilir.