Arkadaşlar ilk önce tablolarımı oluşturdum.
CREATE TABLE `anket` (
`id` INT(3) NOT NULL AUTO_INCREMENT,
`baslik` VARCHAR(255) NOT NULL,
`soru` VARCHAR(255) NOT NULL,
`tarih` DATETIME NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin5 AUTO_INCREMENT=1 ;
CREATE TABLE `secenekler` (
`id` BIGINT(5) NOT NULL AUTO_INCREMENT,
`anket_id` INT(3) NOT NULL,
`secenek` VARCHAR(255) NOT NULL,
KEY `id` (`id`),
KEY `anket_id` (`anket_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin5 AUTO_INCREMENT=1 ;
CREATE TABLE `oylar` (
`id` BIGINT(10) NOT NULL AUTO_INCREMENT,
`anket_id` INT(3) NOT NULL,
`secenek_id` BIGINT(5) NOT NULL,
`oy` BIGINT(5) NOT NULL DEFAULT '0',
`kullanici_ip` VARCHAR(25) NOT NULL,
`tarih` DATETIME NOT NULL,
PRIMARY KEY (`id`),
KEY `anket_id` (`anket_id`),
KEY `secenek_id` (`secenek_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin5 AUTO_INCREMENT=1 ;
Sonra bir form oluşturdum
<?php
@mysql_connect("localhost", "root", "") || die ("CONN_ERR_1");
@mysql_select_db("test") || die("CONN_ERR_2");
@mysql_query("SET NAMES 'latin5' ");
if (! $_POST['submit'] && ! $_POST['submit2']){
?>
<html>
<body>
<form action="<?php $_SERVER['$PHP_SELF'] ?>" method="POST">
<table align="center" width="50%" border="1" cellpadding="0" cellspacing="2">
<tr> <!-- ADIM I -->
<td colspan="2">Anket Yaratıcı:</td>
</tr>
<tr>
<td width="50%">Soru: (Max 255 )</td>
<td width="50%"><input type="text" maxlength="255" name="soru"></td>
</tr>
<tr>
<td width="50%">Anket Adı: (Max 255 )</td>
<td width="50%"><input type="text" maxlength="255" name="anket_adi"></td>
</tr>
<tr>
<td width="50%">Kaç Seçenekli</td>
<td width="50%"><input type="text" name="secenek_sayisi" maxlength="5"></td>
</tr>
<tr>
<td> </td>
<td><input type="reset" name="reset" value="TEMIZLE">
<input type="submit" name="submit" value="ADIM I"></td>
</tr>
</table>
</form>
</body>
</html>
Seçenekleri belirtecek yerde tamamdır
<?php
}
if ($_POST['submit']){
//session_start();
$soru = $_POST['soru'];
$secenek_sayisi = $_POST['secenek_sayisi'];
$anket_adi = $_POST['anket_adi'];
echo "<html><body>
<form action=\"" .$_SERVER[$PHP_SELF]. "\" method=\"POST\">
<table align=\"center\" width=\"50%\" border=\"1\" cellpadding=\"0\" cellspacing=\"2\">
<tr>
<td width=\"50%\"> </td>
<td width=\"50%\"><input type=\"hidden\" name=\"soru\" value=\"$soru\">
<input type=\"hidden\" name=\"secenek_sayisi\" value=\"$secenek_sayisi\">
<input type=\"hidden\" name=\"anket_adi\" value=\"$anket_adi\">
$soru</td>
</tr>";
for ($i=0; $i<$secenek_sayisi; $i++) {
$secenek_no= intval($i+1);
$secenek_adi[] = $_SESSION['secenek'.$secenek_no.''];
echo "
<tr>
<td width=\"50%\">Seçenek -$secenek_no-</td>
<td width=\"50%\"><input type=\"text\" name=\"secenek_$secenek_no\" value=\"$secenek_adi[$i]\"></td>
</tr>";
}
echo "<tr>
<td width=\"50%\"> </td>
<td width=\"50%\">
<input type=\"reset\" name=\"reset\" value=\"TEMIZLE\">
<input type=\"submit\" name=\"submit2\" value=\"ADIM II\">
</tr>
</table>
</form>
<body>
</html>";
}
Gelen oyları okuyacağım bölümde tamam
if ($_POST['submit2']) {
//session_start();
$soru = $_POST['soru'];
$secenek_sayisi = $_POST['secenek_sayisi']; //toplam secenek sayısı//
//echo $secenek_sayisi;
$anket_adi = $_POST['anket_adi'];
//$secenek = "secenek_";
for ($i=0; $i < $secenek_sayisi; $i++){
$secenek_no= intval($i+1);
$_SESSION['secenek'.$secenek_no.''] = $_POST['secenek_'.$secenek_no.''];
//$secenekler[] = $secenek.$secenek_no;
$degerler[] = $_POST['secenek_'.$secenek_no.''];
}
for ($i=0; $i< $secenek_sayisi; $i++) {
$secenekler[] = $degerler[$i];
}
//print_r( $secenekler);
$sql = mysql_query("INSERT INTO anket VALUES ('','$anket_adi','$soru',NOW() ) ");
if (!$sql) { echo "Tabloya yazılamadı : ANKET"; } else {
$sql = mysql_query("SELECT id FROM anket WHERE baslik LIKE '%$anket_adi%' ");
$anket_id = mysql_result ($sql,0);
}
//echo "ANKET ID : ".$anket_id;
$i=0;
while ( $i < $secenek_sayisi ) {
$sql = mysql_query("INSERT INTO secenekler (id,anket_id,secenek) VALUES ('','$anket_id','$secenekler[$i]') ");
if ($sql || die("Tabloya Yazılamadı : SECENEKLER"));
$i++;
}
$sql = mysql_query("SELECT id FROM secenekler WHERE anket_id='$anket_id' ");
while ($read = mysql_fetch_array($sql)){
$secenek_ids[] = $read['id'];
}
//echo count($secenek_ids);
$i=0;
while ($i < count($secenek_ids)) {
$sql = mysql_query("INSERT INTO oylar VALUES ('','$anket_id','$secenek_ids[$i]',
'', '', '') ");
if ($sql || die ("Tabloya Yazılamadı : OYLAR") );
$i++;
}
}
?>
Arkadaşlar öğrencinin sınıfını belirtemesi için ve sonuçlarda kaç kişi hangi şıkkı işaretlemiş olayını nasıl yapabilirim. tüyo verebilirmisiniz.