Tut mir leid bin noch ein Amateur und habe noch relativ wenig Ahnung vom Programieren.
Ist es zufällig der Quelltext?
Hier der Quelltext:
<html>
<head><title>Putzplan</title></head>
<body>
<b>Anzeige aufgeben</b><br><br><a href="./putzplan.php">Zurueck</a><br><br>bewohner: <br><b>Fehler! Sie haben keinen Namen angegeben.</b><br><br> <form action="plan_aufgeben.php" method="post">
<b>Name:</b> <input type="text" name="nickname"><b>(Tanja,Robin,Darius)<br>
<b>Tag:</b>
<input type="text" name="anzeigentext" size=40 maxlength=255><b>(Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag)<br><br>
<b>Waehle deinen Auftrag aus:</b><br>
<br><input type="submit" name="ausfuehren" value="Abschicken">
</form><br><br>
Beiträge von xxviroxx
-
-
Also ich habe ein Projekt vor und zwar eine Website zu erstellen um einen neuen Mitbewohner in einer WG zu finden sprich eine websites mit Info's, 2 Datenbanken ( eine für das Gästebuch und eine für einen putzplan)
So hier mein Problem ich habe da ein Script geschrieben und habe es soweit hinbekommen das der Alles ausführt nur der Speichert nichts in die datenbank ein.
Also er geht bis dahin wo er das speichern soll und führt die methode nicht aus:
Hier mein Script hoffe einer kann mir helfen.<html>
<head><title>Putzplan</title></head>
<body>
<?php
//Bildungsverlag EINS, Online-Projekte mit PHP und MySQL/**
*baut eine Verbindung zur Datenbank auf und gibt die
*Verbindungskennung an die aufrufende Funktion zurück
*@return resource Verbindungskennung
*/
function datenbank_verbinden(){
$db_server='Default';
$db_user='Default';
$db_passwort='Default';
$db_name='Default';
$db_verbindung=mysql_connect($db_server,$db_user,$db_passwort);
if(!$db_verbindung) {
die("Der Server kann nicht erreicht werden.");
}
if(!mysql_select_db($db_name,$db_verbindung)) {
echo "DB tot";
die("Die Datenbank kann nicht angesprochen werden.");
}
return $db_verbindung;
}/**
*holt alle Rubriken aus der Datenbank
*@param array $p_rubriknummer Referenz
*@param array $p_rubrikbezeichnung Referenz
*@param resource $p_verbindungskennung Datenbankverbindung
*/
function gib_auftrag(&$auftrag_id,&$art,
$p_verbindungskennung)
{
$query="SELECT auftrag_id,art
FROM auftrag ORDER BY art";
$ergebnis=mysql_query($query,$p_verbindungskennung);
$i=0;
$auftrag_id=array();
$art=array();
$bewohner_id=array();
$bewohner=array();
$wochentag_id=array();
while($zeile=mysql_fetch_array($ergebnis))
{
$auftrag_id[$i]=$zeile['auftrag_id'];
$art[$i]=$zeile['art'];
$i++;
}
{
$bewohner_id[$i]=$zeile['bewohner_id'];
$bewohner[$i]=$zeile['bewohner'];
$i++;
}
{
$wochentag_id[$i]=$zeile['wochentag_id'];
$tag[$i]=$zeile['tag'];
$i++;
}
}/**
*baut ein Formular auf
*@param array $p_rubriknummer umfasst alle Rubriknummern
*@param array $p_rubrikbezeichnung umfasst alle Rubrikbez.
*/
function formular_aufbauen($auftrag_id,$art)
{
?>
<form action="plan_aufgeben.php" method="post">
<b>Name:</b> <input type="text" name="nickname"><b>(Tanja,Robin,Darius)<br>
<b>Tag:</b>
<input type="text" name="anzeigentext" size=40 maxlength=255><b>(Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag)<br><br>
<b>Waehle deinen Auftrag aus:</b><br>
<?php
for($i=0;$i<count($auftrag_id);$i++)
{
?><input type="checkbox" name="auftrag[]"
value="<?php echo $auftrag_id[$i]?>"><?php
echo $art[$i]."<br>";
}
?>
<br><input type="submit" name="ausfuehren" value="Registrieren">
</form><br><br>
<?php
}/**
*überprüft, ob der Nickname schon in Tabelle inserent
*vorhanden ist und gleichzeitig die vom Benutzer eingegebene
*Email nicht passend ist
*@param resource $p_verbindungskennung Datenbankverbindung
*@return bool ist false, falls Nickname schon vorhanden
*/
function check_nickname($p_verbindungskennung)
{
$query=sprintf("SELECT bewohner FROM bewohner
WHERE bewohner='%s'",
$_GET['bewohner']);
$ergebnis=mysql_query($query,$p_verbindungskennung);
if(mysql_num_rows($ergebnis)!=0)
{
echo"<b>Fehler! Du bist doof!.</b><br><br>";
return false;
}
return true;
}
/**
*überprüft, ob alle Formularfelder ausgefüllt wurden
*und ob zwischen ein und drei Rubriken vom Benutzer
*ausgewählt wurden
*@return bool ist false, falls fehlende oder falsche Eingabe
*/
function check_eintraege()
{
echo "bewohner: ".$_POST['bewohner']. "<br>";
if(empty($_POST['bewohner']))
{
echo"<b>Fehler! Sie haben keinen Namen angegeben.</b><br><br>";
return false;
}
if(!isset($_GET['art']))
{
echo"<b>Fehler! Sie haben keinen Auftrag gewaehlt.</b><br><br>";
return false;
}
if(count($_GET['art'])>3)
{
echo"<b>Fehler! Sie koennen nur maximal drei Auftraege
waehlen.</b><br><br>";
return false;
}
return true;
}/**
*ermittelt, ob die Kombination Nickname und Email
*schon in der Tabelle inserent vorhanden ist; falls ja:
*Anzeige wird in die Datenbank geschrieben und diesem
*Inserenten zugeordnet; falls nein: Anzeige wird in die
*Datenbank geschrieben, ein neuer Inserent wird angelegt und
*diesem wird die Anzeige zugeordnet
*@param resource $p_verbindungskennung
*/
function schreib_inserat($p_verbindungskennung) {
if($_POST['auftrag']){
$checkbox[0]=true;
}
else
{
$checkbox[0]=false;
}if($_POST['bewohner']){
$checkbox[0]=true;
}
else
{
$checkbox[0]=false;
}if($_POST['tag']){
$checkbox[0]=true;
}
else
{
$checkbox[0]=false;
}$query=sprintf("SELECT bewohner_id FROM bewohner
WHERE bewohner='%s'",
$_GET['bewohner']);
$ergebnis=mysql_query($query,$p_verbindungskennung);
if(mysql_num_rows($ergebnis)!=0)
{
//Inserent ist schon in Datenbank, inserentennummer merken
$zeile=mysql_fetch_array($ergebnis);
$bewohner_id=$zeile['bewohner_id'];
}
else
{
//neuen Inserenten anlegen und inserentennummer merken
$query=sprintf("INSERT INTO bewohner
SET bewohner='%s'",
$_GET['bewohner']);
$ergebnis=mysql_query($query,$p_verbindungskennung);
$mitbewoher_id=mysql_insert_id();
}
//Anzeigentext abspeichern und anzeigennummer merken
$query=sprintf("INSERT INTO wochentag
SET tag='%s',
bewohner_id=$bewohner_id",
$_GET['tag']);
$ergebnis=mysql_query($query,$p_verbindungskennung);
$wochentag_id=mysql_insert_id();
//zugeordnete Rubriken abspeichern
$auftragarray=array();
$auftragarray=$_GET['auftrag'];
$wochentagarray=array();
$wochentagarray=$_GET['wochentag'];
$bewohnerarray=array();
$bewohnerarray=$_GET['bewohner'];
$i=0;
while($i<count($auftragarray))
{
$query="INSERT INTO zuordnung
SET auftrag_id=$auftrag_id,
wochentag_id=$wochentag_id,
bewohner_id=$bewohner_id";
$ergebnis=mysql_query($query,$p_verbindungskennung);
$i++;
}
echo"Dein Auftrag wurde entgegengenommen.<br><br>";
mysql_close($p_verbindungskennung);
}/**
*von hier werden die Funktionen datenbank_verbinden(),
*check_nickname(), check_email(), check_eintraege() u.
*schreib_inserat() aufgerufen
*/
function anzeige_eintragen()
{
$verbindungskennung=datenbank_verbinden();
if(check_eintraege()
&&check_name($verbindungskennung))
schreib_inserat($verbindungskennung);
}/**
*von hier werden die Funktionen datenbank_verbinden(),
*gib_rubriken() und formular_aufbauen() aufgerufen
*/
function formular()
{
$verbindungskennung=datenbank_verbinden();
gib_auftrag($auftrag_id,$art,$verbindungskennung);
formular_aufbauen($auftrag_id,$art);
}//Beginn
echo "<b>Anzeige aufgeben</b><br><br>";
echo "<a href=\"./putzplan.php\">Zurueck</a><br><br>";
if(isset($_POST['ausfuehren'])) {
anzeige_eintragen();
}
else{
echo "Speichern !<br>";
}formular();
Ich bedanke mich schonmal im vorraus.