FleyerShaver
Neues Mitglied
Ich haben folgendes tutorial gemacht http://tut.php-q.net/login-poll.html.
Ich habe von Anfang an alles durchgearbeitet bis hier. Ich bekomm den QT einfach nicht zusammen. Mein QT sieht jetzt so aus:
Was mach ich falsch.
Ich habe von Anfang an alles durchgearbeitet bis hier. Ich bekomm den QT einfach nicht zusammen. Mein QT sieht jetzt so aus:
PHP:
<?php
$rights = getRights();
if(!in_array("Admin", $rights)) {
no_rights();
} else {
switch(isset($_GET['action'])?$_GET['action']:'') {
case "add":
$sql = "SELECT
COUNT(*) AS Anzahl
FROM
poll
WHERE
DATE_ADD(Datum,INTERVAL 7 DAY) > NOW();";
$check = new Query($sql);
if($check->error()) {
die("<pre>".$check->geterror()."</pre>");
}
$row = $check->fetch();
if($row['Anzahl']) {
echo "<p class=\"error\">\n";
echo " Es läuft bereits eine Abstimmung, warten sie\n";
echo " bitte diese beendet ist.\n";
echo "</p>\n";
back2admin();
} else {
if(!isset($_SESSION['Frage'])) {
$_SESSION['Frage'] = "";
}
if(!isset($_SESSION['Antworten'])) {
$_SESSION['Antworten'] = array();
}
switch(isset($_POST['submit'])?$_POST['submit']:'') {
default:
if(isset($_POST['submit']) AND "Frage speichern" == $_POST['submit']) {
$_SESSION['Frage'] = htmlspecialchars(trim($_POST['frage']))
if(isset($_POST['submit']) AND "Antwort hinzufügen" == $_POST['submit']) {
$_SESSION['Antworten'][] = htmlspecialchars(trim($_POST['antwort']));
}
if(isset($_POST['submit']) AND "Löschen" == $_POST['submit']) {
if(isset($_POST['antworten'])) {
foreach($_POST['antworten'] as $value) {
unset($_SESSION['Antworten'][$value]);
}
$_SESSION['Antworten'] = array_values($_SESSION['Antworten']);
// lücken im Array schließen.
}
}
if(isset($_POST['submit']) AND "Poll hinzufügen" == $_POST['submit']) {
if(count($_SESSION['Antworten']) >= 2) {
$sql = "INSERT INTO
poll(Frage,Datum)
VALUES
('".addslashes($_SESSION['Frage'])."',
NOW());";
$poll = new Query($sql);
if($poll->error()) {
die("<pre>".$poll->getError()."</pre>\n");
}
unset($poll);
// nun muss ich die ID holen, damit ich die
// antworten hinzufügen kann
$sql = "SELECT
ID
FROM
poll
ORDER BY
Datum DESC
LIMIT
1;";
$getid = new Query($sql);
if($getid->error()) {
die("<pre>".$getid->getError()."</pre>\n");
}
$row = $getid->fetch();
$PollID = $row['ID'];
$getid->free();
unset($getid);
// und nun die Antworten hinzufügen, und die Klickcounter
// auf 0 setzen.
foreach($_SESSION['Antworten'] as $antwort) {
$sql = "INSERT INTO
poll_antworten(PollID,Antwort,Klicks)
VALUES
('".$PollID."',
'".$antwort."',
'0');";
$ansqry = new Query($sql);
if($ansqry->error()) {
die("<pre>".$ansqry->getError()."</pre>\n");
}
unset($ansqry);
}
echo "<p>\n";
echo " Poll wurde hinzugefügt.\n";
echo "</p>\n";
back2admin();
break;
// wir wollen nicht die If-Abfrage verlassen, was ja gar nicht
// geht, sondern die switch-Abfrage, da wir das Hauptformular
// nicht mehr brauchen.
} else {
echo "<p>\n";
echo " Bitte fügen sie mindestesn 2 Antworten hinzu.";
echo "</p>\n";
}
}
echo "<form action=\"index.php?section=admin&site=poll&action=add\"";
echo " method=\"post\"";
echo " class=\"formular\">\n";
echo " <p>\n";
echo " Neuen Poll hinzufügen\n";
echo " </p>\n";
echo " <ol>\n";
echo " <li>\n";
echo " Frage\n";
echo " <ul>\n";
echo " <li>\n";
echo $_SESSION['Frage']."\n";
echo " </li>\n";
echo " <li>\n";
echo "<input type=\"submit\" name=\"submit\" value=\"Frage bearbeiten\" />\n";
echo " </li>\n";
echo " </ul>\n";
echo " </li>\n";
echo " <li>\n";
echo " Antworten\n";
echo " <ul>\n";
if(count($_SESSION['Antworten'])) {
foreach($_SESSION['Antworten'] as $key => $value) {
echo "<li>\n";
echo "<input type=\"chechbox\" ";
echo " name=\"antworten[]\" ";
echo " value=\"".$key."\" />\n";
echo $value."\n";
echo "</li>\n";
}
}
echo " <li>\n";
echo "<input type=\"submit\" name=\"submit\"";
echo " value=\"Neue Antwort hinzufügen\" />\n";
if(count($_SESSION['Antworten'])) {
echo "<input type=\"submit\" name=\"submit\"";
echo " value=\"Löschen\" />\n";
}
echo " </li>\n";
echo " </ul>\n";
echo " </li>\n";
echo " <li>\n";
echo "<input type=\"submit\" name=\"submit\" value=\"Poll hinzufügen\" />\n";
echo "<input type=\"reset\" name=\"submit\" value=\"Zurücksetzen\" />\n";
echo "<input type=\"hidden\" name=\"".session_name()."\"";
echo " value=\"".session_id()."\" />";
echo " </li>\n";
echo " <ol>\n";
echo "</form>\n";
break;
case 'Frage bearbeiten':
echo "<form action=\"index.php?section=admin&site=poll&action=add\" ";
echo " method=\"post\"";
echo " class=\"formular\">\n";
echo " <p>\n";
echo " Frage bearbeiten.\n";
echo " </p>\n";
echo " <ol>\n";
echo " <li>\n";
echo " <label for=\"frage\">Frage</label>\n";
echo " <input type=\"text\" name=\"frage\"";
echo " id=\"name\" value=\"".$_SESSION['Frage']."\" />\n";
echo " </li>\n";
echo " <li>\n";
echo " <input type=\"submit\" name=\"submit\"";
echo " value=\"Frage speichern\" />\n";
echo " <input type=\"hidden\" name=\"".session_name()."\"";
echo " value=\"".session_id()."\" />";
echo " </li>\n";
echo " </ol>\n";
echo "</form>\n";
back2admin();
break;
case 'Neue Antwort hinzufügen':
echo "<form action=\"index.php?section=admin&site=poll&action=add\" ";
echo " method=\"post\"";
echo " class=\"formular\">\n";
echo " <p>\n";
echo " Antwort hinzufügen\n";
echo " </p>\n";
echo " <ol>\n";
echo " <li>\n";
echo " <label for=\"antwort\">Antwort</label>\n";
echo " <input type=\"text\" name=\"antwort\"";
echo " id=\"antwort\" />\n";
echo " </li>\n";
echo " <li>\n";
echo " <input type=\"submit\" name=\"submit\"";
echo " value=\"Antwort hinzufügen\" />\n";
echo " <input type=\"hidden\" name=\"".session_name()."\"";
echo " value=\"".session_id()."\" />";
echo " </li>\n";
echo " </ol>\n";
echo "</form>\n";
break;
}
}
$check->free();
unset($check);
break;
case "edit":
...
?>