Şimdi Ara

Soru Cevap Sistemi Radio Button Seçimi

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
2
Cevap
0
Favori
1.178
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  •  
    <?php
    session_start();
    require_once("./class/database_islemleri.php");
    $db = new Database('localhost', 'test', '123', 'db_name');
    ?>

    <!DOCTYPE html>
    <html>
    <head>
    <title>Müşteri Anketi</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

    <style type="text/css">
    ........

    </style>

    </head>
    <body>
    <br/>
    <div id="container">
    <div class="baslik">Müşteri Memnuniyet Anketi</div>
    <?PHP
    require_once "formvalidator.php";

    $show_form=true;

    if(isset($_POST['Submit']))
    {// The form is submitted
    $validator = new FormValidator(); //Setup Validations
    $validator->addValidation("ad","req","Lütfen adınızı boş bırakmayın");
    $validator->addValidation("soyad","req","Lütfen Soyadınızı boş bırakmayın");
    $validator->addValidation("firma","req","Lütfen Firma bilginizi boş bırakmayın");

    $validator->addValidation("1","dontselectradio","Lütfen boş soru bırakmayın");
    $validator->addValidation("2","dontselectradio","Lütfen boş soru bırakmayın");
    $validator->addValidation("3","dontselectradio","Lütfen boş soru bırakmayın");
    $validator->addValidation("4","dontselectradio","Lütfen boş soru bırakmayın");
    //Now, validate the form
    if($validator->ValidateForm())
    { //Validation success. (like sending email, saving to Database etc)
    echo "<h2>Bütün bilgiler geçerli!</h2>";
    $show_form=false;

    // username and password sent from form
    $ad=$_POST['ad'];
    $soyad=md5($_POST['soyad']);
    $firma=md5($_POST['firma']);
    $telefon=md5($_POST['telefon']);

    // To protect MySQL injection (more detail about MySQL injection)
    $ad = stripslashes($ad);
    $soyad = stripslashes($soyad);
    $firma = stripslashes($firma);
    $telefon = stripslashes($telefon);

    $ad = mysql_real_escape_string($ad);
    $soyad = mysql_real_escape_string($soyad);
    $firma = mysql_real_escape_string($firma);
    $telefon = mysql_real_escape_string($telefon);
    .........


    }
    else
    {
    echo "<B>Bilgi doğrulama hatası:</B>";

    $error_hash = $validator->GetErrors();
    foreach($error_hash as $inpname => $inp_err)
    {
    echo "<p>$inpname : $inp_err</p>\n";
    }
    }
    }

    if(true == $show_form)
    {
    echo "
    <form name='test' method='POST' action='' accept-charset='UTF-8'>
    <table style=\"margin-left:30px;\" cellspacing='0' cellpadding='10' border='0' bordercolor='#000000'>
    <tr>
    <td>
    <table cellspacing='2' cellpadding='2' border='0'>
    <tr height=\"30\">
    <td align='left' class='normal_field'>Ad</td>
    <td class='element_label'>
    <input type='text' name='ad' size='20'>
    </td>
    </tr>

    <tr height=\"30\">
    <td align='left' class='normal_field'>Soyad</td>
    <td class='element_label'>
    <input type='text' name='soyad' size='20'>
    </td>
    </tr>

    <tr height=\"30\">
    <td align='left' class='normal_field'>Firma</td>
    <td class='element_label'>
    <input type='text' name='firma' size='20'>
    </td>
    </tr>

    <tr height=\"30\">
    <td align='left' class='normal_field'>Telefon</td>
    <td class='element_label'>
    <input type='text' name='telefon' size='20'>
    </td>
    </tr>
    </table>
    </td>
    </tr>
    </table>

    <br>

    <table class=\"tg-table-light\">
    <tr>
    <th class=\"tg-th-soru\">SORULAR</th>
    <th class=\"tg-center\">Çok İyi</th>
    <th class=\"tg-center\">İyi</th>
    <th class=\"tg-center\">Orta</th>
    <th class=\"tg-center\">Zayıf</th>
    <th class=\"tg-center\">Çok Zayıf</th>
    </tr>
    ";

    // query database
    $q = "SELECT * FROM memnuniyet_anketi_sorular ORDER BY id asc";
    $r = $db->query($q);
    // if we have a result loop over the result
    if ($db->num_rows($r) > 0) {
    while ($rs_sorgu_sonucu = $db->fetch_array_assoc($r)) {
    echo "
    <tr class=\"tg-even\">
    <td class=\"tg-td-soru\">{$rs_sorgu_sonucu['soru']}</td>
    <td class=\"tg-center\"><input name=\"{$rs_sorgu_sonucu['id']}\" value=\"5\" title=\"\" type=\"radio\"></td>
    <td class=\"tg-center\"><input name=\"{$rs_sorgu_sonucu['id']}\" value=\"4\" title=\"\" type=\"radio\"></td>
    <td class=\"tg-center\"><input name=\"{$rs_sorgu_sonucu['id']}\" value=\"3\" title=\"\" type=\"radio\"></td>
    <td class=\"tg-center\"><input name=\"{$rs_sorgu_sonucu['id']}\" value=\"2\" title=\"\" type=\"radio\"></td>
    <td class=\"tg-center\"><input name=\"{$rs_sorgu_sonucu['id']}\" value=\"1\" title=\"\" type=\"radio\"></td>
    </tr>
    ";
    }
    }
    echo " </table>
    <br>
    <input type='submit' name='Submit' value='Anketi Bitir'>
    </form>";
    }
    ?>
    ...................


     Soru Cevap Sistemi Radio Button Seçimi



    Ben basit bir soru ve soruların cevaplarını alacağım bir anket formu yapmak istiyorum.
    Ad soy firma telefon ve sorulan soruların doğruluğunu yani boş bırakılmış mı doldurulmuşmu kontrol ettikten sonra. veri tabanına kayıt yapacağım.

    sorularda database den cekilerek yazılıyor.

    doğrulama başarısız olursa daha önce seçilmiş radio button seçimleri kayboluyor. bunu nasıl düzeltelbilirim.
    php den çok fazla anlamam delphi ile çok kod yazdım. object orient mantığını biliyorum.

    Acaba bir sınıf yazsam validate input işleminden önce bütün soruların cevapları (radio button seçimerini) o sınıfın içinde hatalı ise bilgileri geri yüklesem olur mu? Eğer olursa bir sınıf oluşturup içeriği array veya liste mantığı ile nasıl tutarım.

    Kolay gelsin iyi çalışmalar







  • Sayfa yenilendiğinden dolayımı verileri kaybediyorsunuz?

    Eğer öyle ise doğrulamayı Ajax ile sayfa yenilenmeden yaparsınız ve hatayı gösterirsiniz.
    Hem daha dinamik olur hem de sayfa yenilemeden işlemi yapmış olursunuz.

    Eğer illa sayfa yenilenmesi gerekiyorsa, gelen verileri bir sessionda tutarsınız eğer doğrulama gerçekleşmezse o sessiondaki verilere göre radiobuttonları doldurursunuz.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.