Beruhigt euch Leute!
Es ist mir bekannt das PHP bei 0 zu zählen beginnt.
Die Codes wurden mit hilfe der Schleife schon geändert.
Ich hab in der Config.php zusätzlich eine Variable eingefügt, die besagt wie viele Antworten es sind! Max. 15
config.php
PHP-Code:
<?php
//Frage:
$frage = "Wie ist deine Lieblingsfarbe";
//Wie viele Antwortmöglichkeiten gibt es: (1-15)
$antwort_zahl="7";
//Angaben zu den Antworten...
$antwort[1] = "Blau";
$antwort[2] = "Gelb";
$antwort[3] = "Türkis";
$antwort[4] = "Schwarz";
$antwort[5] = "Weiß";
$antwort[6] = "Braun";
$antwort[7] = "Grün";
$antwort[8] = "";
$antwort[9] = "";
$antwort[10] = "";
$antwort[11] = "";
$antwort[12] = "";
$antwort[13] = "";
$antwort[14] = "";
$antwort[15] = "";
//erfolgsmeldung
$erfolg = "Sehr geehrter User. Ich habe Ihre Antwort in meiner Datenbank verzeichnet!";
$ergeb = "\n[b]Ergebnis:[/b]<a href=../ergebnis.php>hier!</a>"; //hier mit HTML Tags arbeiten
//fehlermeldungen:
/*Hier die Fehlermeldung das er schon mal gevotet hat*/
$cookiefehler="Leider haben Sie schon mal gewählt, und können deshalb nicht noch mal Wählen!";
$sendfehler="Leider haben sie keine Antwort ausgewählt, bitte klicken Sie auf zurück, wählen eine Antwort, und senden es erneut ab!";
?>
So dann die umfrage.php Datei:
PHP-Code:
<?php
<html>
<head>
<title>Umfragen - Sky.net.ms</title>
</head>
<body>
<? include("auswert/config.php") ?>
<center>
<table>
<tr>
<td>[b][i]<? echo $frage; ?></td>
</tr></table>
<table border="1">
<form action="auswert/auswert.php" name="Umfragen" method="post">
<tr>
<td></td>
<td>[b]Antworten[/b]</td>
</tr><?
for($i = 1; $i <= $antwort_zahl; $i++) { ?>
<tr>
<td><input type="radio" name="umfragsend" value="<? echo $i; ?>"></td>
<td><p align="left"><? echo $antwort[$i]; ?></p></td>
<? } ?>
</tr>
<tr>
<td colspan="2"><center><input type="submit" name="abschicken" value"Antwort Voten"></center></td></tr>
</table>
</form>
</body>
</html>
?>
die ergebnis.php
PHP-Code:
<?php
// geht the config...
include('auswert/config.php');
?>
<html>
<head>
<title>Umfragen - tomtaz.de.ms</title>
</head>
<body>
<center>
<h1>Ergebnis:</h1>
<h5>der Frage: <? echo $frage; ?>?</h5>
<table border="15">
<?
$ergebnis = array();
$stimmen = 0;
for($i = 1; $i <= $antwort_zahl; $i++) {
//zum auslesen der $i-ten Datei
$fd = fopen("logs/log_$i.txt",'r');
$ergebnis[$i] = (integer)fgets($fd, 100);
$stimmen += $ergebnis[$i];
fclose($fd);
}
if($stimmen == 0) die('Bisher noch keine Stimmen abgegeben!'); // Um Devsion By Zero zu vermeiden
for($i = 1; $i <= $antwort_zahl; $i++) {
?>
<tr>
<td><p align="left">[b]<? echo $antwort[$i]; ?></p></td>
<?
$proz=round($ergebnis[$i] * 100 / $stimmen);
$pixl=$proz*2;
?>
<td><p align="left"><? echo "[img]templets/vorne.gif[/img][img]templets/mitte.gif[/img][img]templets/hinten.gif[/img] "; ?> (<? echo $proz; ?>%)</td>
</tr>
<? }?>
</table>
<center>Bisher wurden [b]<? echo $stimmen; ?>[/b] Stimmen in der Datenbank verzeichnet
</body>
</html>
?>
Wie ich allerdings die auswert.php Datei configurieren kann, das Maximal 15 Antworten Möglich sind, weiß ich nicht...
PHP-Code:
<?php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Umfragen - Sky.net.ms</title>
</head>
<body>
<?php
include('config.php'); //includiert die configuration
//Diverse Angaben
$date1 = date("d. M Y - H:i");
if (isset($abschicken))
{
if ($umfragsend =="")
{ echo $sendfehler; }
else
{
if ($umfragsend =="1") //wird ausgeführt wenn value 1 ergibt
{
$aufruf1=fopen("../logs/log_1.txt","r+");
$open1=fgets($aufruf1,100);
$open1=$open1+1;
rewind($aufruf1);
fputs($aufruf1,$open1);
fclose($aufruf1);
echo $erfolg;
}
if ($umfragsend =="2")
{
$aufruf2=fopen("../logs/log_2.txt","r+");
$open2=fgets($aufruf2,100);
$open2=$open2+1;
rewind($aufruf2);
fputs($aufruf2,$open2);
fclose($aufruf2);
echo $erfolg;
}
if ($umfragsend =="3")
{
$aufruf3=fopen("../logs/log_3.txt","r+");
$open3=fgets($aufruf3,100);
$open3=$open2+1;
rewind($aufruf3);
fputs($aufruf3,$open3);
fclose($aufruf3);
echo $erfolg;
}
if ($umfragsend =="4")
{
$aufruf4=fopen("../logs/log_4.txt","r+");
$open4=fgets($aufruf4,100);
$open4=$open4+1;
rewind($aufruf4);
fputs($aufruf4,$open4);
fclose($aufruf4);
echo $erfolg;
}
if ($umfragsend =="5")
{
$aufruf5=fopen("../logs/log_5.txt","r+");
$open5=fgets($aufruf5,100);
$open5=$open5+1;
rewind($aufruf5);
fputs($aufruf5,$open5);
fclose($aufruf5);
echo $erfolg;
}
if ($umfragsend =="6")
{
$aufruf6=fopen("../logs/log_6.txt","r+");
$open6=fgets($aufruf6,100);
$open6=$open6+1;
rewind($aufruf6);
fputs($aufruf6,$open6);
fclose($aufruf6);
echo $erfolg;
}
if ($umfragsend =="7")
{
$aufruf7=fopen("../logs/log_7.txt","r+");
$open7=fgets($aufruf7,100);
$open7=$open7+1;
rewind($aufruf7);
fputs($aufruf7,$open7);
fclose($aufruf7);
echo $erfolg;
}
if ($umfragsend =="8")
{
$aufruf8=fopen("../logs/log_8.txt","r+");
$open8=fgets($aufruf8,100);
$open8=$open8+1;
rewind($aufruf8);
fputs($aufruf8,$open8);
fclose($aufruf8);
echo $erfolg;
}
if ($umfragsend =="9")
{
$aufruf9=fopen("../logs/log_9.txt","r+");
$open9=fgets($aufruf9,100);
$open9=$open9+1;
rewind($aufruf9);
fputs($aufruf9,$open9);
fclose($aufruf9);
echo $erfolg;
}
if ($umfragsend =="10")
{
$aufruf10=fopen("../logs/log_10.txt","r+");
$open10=fgets($aufruf10,100);
$open10=$open10+1;
rewind($aufruf10);
fputs($aufruf10,$open10);
fclose($aufruf10);
echo $erfolg;
}
if ($umfragsend =="11")
{
$aufruf11=fopen("../logs/log_11.txt","r+");
$open11=fgets($aufruf11,100);
$open11=$open2+1;
rewind($aufruf11);
fputs($aufruf11,$open11);
fclose($aufruf11);
echo $erfolg;
}
if ($umfragsend =="12")
{
$aufruf12=fopen("../logs/log_12.txt","r+");
$open12=fgets($aufruf12,100);
$open12=$open12+1;
rewind($aufruf12);
fputs($aufruf12,$open12);
fclose($aufruf12);
echo $erfolg;
}
if ($umfragsend =="13")
{
$aufruf13=fopen("../logs/log_13.txt","r+");
$open13=fgets($aufruf13,100);
$open13=$open13+1;
rewind($aufruf13);
fputs($aufruf13,$open13);
fclose($aufruf13);
echo $erfolg;
}
if ($umfragsend =="14")
{
$aufruf14=fopen("../logs/log_14.txt","r+");
$open14=fgets($aufruf12,100);
$open14=$open14+1;
rewind($aufruf14);
fputs($aufruf14,$open14);
fclose($aufruf15);
echo $erfolg;
}
if ($umfragsend =="15")
{
$aufruf15=fopen("../logs/log_15.txt","r+");
$open15=fgets($aufruf12,100);
$open15=$open15+1;
rewind($aufruf15);
fputs($aufruf15,$open15);
fclose($aufruf15);
echo $erfolg;
}
$aufrufip=fopen('../logs/log_ip.txt','a'); //Speichert alles in eine TXT Datei ab, zur späteren Abfrage, und aus sicherheitsgründen
$openip="\n";
$openip.=$_SERVER['REMOTE_ADDR']." == ".$date1." == ".$umfragsend;
fputs($aufrufip,$openip);
fclose($aufrufip);
echo $ergeb;
}
}//schliest die ifsend befehl!
?>
</body>
</html>
?>
Für vorschlöge bin ich offen...