Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Pizzabestellung

Diskussion: Pizzabestellung im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Hallo Leute! Ich weiß nicht, inwiefern es eine Frechheit ist, so etwas hier zu fragen. Wenn ein Mod was ...

Antwort
Alt 05.03.07, 17:03   #1 (permalink)
 
Registriert seit: 21.04.06
dutchman2006 Leistung: Facit NTK
dutchman2006 eine Nachricht über ICQ schicken
Likes: 1
Pizzabestellung

Anzeige

Hallo Leute!

Ich weiß nicht, inwiefern es eine Frechheit ist, so etwas hier zu fragen.
Wenn ein Mod was dagegen haben sollte, so möge er den Fred bitte unverzüglich entfernen - Danke.

Zu meinem Problem:
Wir machen im Informatikunterricht gerade PHP/MySQL und ich habe folgende Aufgabe bekommen:

Erstelle eine Seite zur Pizzabestellung. Die Seite soll folgende Informationen vom Benutzer abfragen:

  • Art der Pizza
  • Lieferadresse
  • Telefonnumer
  • natürlich der Name

Das ganze soll über ein Formular eingegeben (Pizzaart natürlich Liste) werden, in eine MySQL Datenbank übertragen, und anschließend auf einer "Ihre Bestellung lautet:"-Seite ausgegeben werden.

Dummerweise bin ich diesbezüglich ein ziemlicher Noob und steh voll auf der Leitung.
Sollte jemand von euch zu viel Zeit haben (obwohl es meiner Einschätzung nach gar nicht so Zeitaufwändig ist), wäre es toll, wenn mir jemand dieses Programm in vereinfachter Form zur Verfügung stellen könnte (einfach nur eine Liste mit zwei Auswahlmöglichkeiten, zwei sonstige Felder, ein Submit-Button und das ganze in die Datenbank schreiben (Der Übergang Formular-Datenbank macht mir die größten Sorgen) und im Optimalfalll auch wieder ausgeben (wobei ich glaube, dass ich das sogar zusammenbekomme, hoff' ich halt, denk ich, glaub ich mal :()).

Die Seite rundherum und die Modifikation des hoffentlich von einem barmherzigen HaBoLer dem Holländer zur Verfügung gestellten Programmcodes übernehme dann ich.

Es wäre extrem nett, wenn jemand so ein Template schreiben und mir zur Verfügung stellen (und somit meinen Anus) retten könnte.

Danke schon im Voraus und euch allen noch eine schöne Zeit!

LG
dutchman
dutchman2006 ist offline   Mit Zitat antworten
Alt 05.03.07, 17:07   #2 (permalink)
.:L
Senior Member
 
Benutzerbild von .:L
 
Registriert seit: 05.05.06
.:L Leistung: 8086
.:L eine Nachricht über ICQ schicken
Likes: 24
Standard

Wieso soll as in die Datenbank...?

Könntest ja n einfaches Mailto Formular machn
__________________
fat people are hard to kidnap
.:L ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 05.03.07, 17:21   #3 (permalink)
 
Registriert seit: 25.07.06
valenterry Leistung: Facit NTK
Likes: 0
Standard

Denk daran, dass du noch einen Schutz gegen das hier einbaust!
http://tinyurl.com/2klqv4

Naja, ich werd mir mal etwas Zeit dafür nehmen, aber nur um selbst etwas zu lernen, also mach dir keine allzu großen Hoffnungen.
valenterry ist offline   Mit Zitat antworten
Alt 05.03.07, 17:23   #4 (permalink)
Moderator
 
Benutzerbild von lightsaver
 
Registriert seit: 19.06.06
lightsaver Leistung: Pentium Ilightsaver Leistung: Pentium Ilightsaver Leistung: Pentium I
Likes: 52
Standard

also ich spreche jetzt mal nur für mich, glaube aber, die meinung von einigen hier damit zu treffen:

sinn der aufgabe ist es wohl nicht, dass du lernst, nach kompletten problemlösungen bei anderen zu fragen (nichts anderes tust du, da du etwa 95% der arbeit gerne von uns hättest). ich denke eher, dass der sinn darin besteht, dass du genau das lernst, wo du selber sagst dass du schwächen hast! und schwierig ist dieses projekt nun wirklich nicht.

ich gebe dir trotzdem einen tip:

falls du ein buch über php hast, suche dir mal eine anleitung darin, wie das mit den mysql-sachen funktioniert. meistens findest du sowas wie ein gästebuch als beispiel. ansonsten suche dir ein entsprechendes tutorial über google. dann lese dir das tutorial gut durch, da dieses dein problem schon in großen teilen abdecken kann. dann könntest du dir das beispiel als grundgerüst nehmen und soweit abwandeln, dass es deine bedürfnisse erfüllt. solltest du dann noch spezielle fragen/probleme haben, kannst du deinen quelltext gerne posten, dazu noch deine frage möglichst genau formulieren und dir wird hier sicher gerne geholfen
lightsaver ist offline   Mit Zitat antworten
Alt 05.03.07, 21:07   #5 (permalink)
 
Registriert seit: 17.01.06
Oi!Alex Leistung: 8086
Likes: 7
Standard

Entweder du machst es selber und stellst wenn dann nur konkrete fragen zu bestimmten problemen eine Frage, oder du hast ein PayPal konto und machst mir einen vorschlag und ich erledige es für dich.
Oi!Alex ist offline   Mit Zitat antworten
Alt 05.03.07, 21:16   #6 (permalink)
Moderator
 
Benutzerbild von PuppE
 
Registriert seit: 13.12.04
PuppE Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Original von Oi!Alex
Entweder du machst es selber und stellst wenn dann nur konkrete fragen zu bestimmten problemen eine Frage, oder du hast ein PayPal konto und machst mir einen vorschlag und ich erledige es für dich.
Hallo? Moderatoren haben ja wohl mal vorrecht!



Ich denke eigentlich auch das du es wegen dem Lerneffekt lieber selbst versuchen solltest.
Da der Thread ja aber gegen keine Regel verstößt lasse ich ihn aber am Leben.
__________________
[Wer glaubt, dass Projektleiter Projekte leiten, glaubt auch, dass Zitronenfalter Zitronen falten.]
PuppE ist offline   Mit Zitat antworten
Alt 05.03.07, 21:25   #7 (permalink)
Moderator
 
Benutzerbild von lightsaver
 
Registriert seit: 19.06.06
lightsaver Leistung: Pentium Ilightsaver Leistung: Pentium Ilightsaver Leistung: Pentium I
Likes: 52
Standard

Zitat:
Original von PuppE
Hallo? Moderatoren haben ja wohl mal vorrecht!
da sag ich doch mal ganz frech: NÖ!
lightsaver ist offline   Mit Zitat antworten
Alt 05.03.07, 22:44   #8 (permalink)
 
Benutzerbild von Dreamer
 
Registriert seit: 27.05.02
Dreamer Leistung: Facit NTK
Likes: 0
Standard

Hier mal einpaar Adressen wenn du keine Bücher hast oder du geizig bist und net 10 ?us ausgeben willst.

www.selfphp.de
www.php-homepage.de
www.php-center.de
www.php-resource.de

Oder wenn du doch Bücher kaufen willst.

www.amazon.de
www.ebay.de
__________________
Seien wir realistisch, versuchen wir das Unmögliche.
Dreamer ist offline   Mit Zitat antworten
Alt 05.03.07, 23:02   #9 (permalink)
fetzer
Guest
 
Likes:
Standard

Wie Poste ich richtig?
[...]
Probleme erörtern, nicht offen stehen lassen
[...]

Hierbei könntest du beispiel sagen, wobei es sich bei deinem "aufm Schlauch stehen" handelt, dann könnte man dir hierbei helfen. Alles andere würde den Sinn dieser Aufgabe verfehlen.
  Mit Zitat antworten
Alt 06.03.07, 07:45   #10 (permalink)
 
Registriert seit: 17.01.06
Oi!Alex Leistung: 8086
Likes: 7
Standard

Zitat:
Original von PuppE
...
Hallo? Moderatoren haben ja wohl mal vorrecht!
...
Du machst doch bei mir bestimmt eine Ausnahme oder?
Oi!Alex ist offline   Mit Zitat antworten
Alt 06.03.07, 10:58   #11 (permalink)
Member of Honour
 
Registriert seit: 07.12.04
end4win hat die Renommee-Anzeige deaktiviert
Likes: 256
Standard

Da Xampp immer noch mit der CD-Verwaltung geliefert wird ist dies nicht nur
frech, sondern schon unverschämt.
Nicht nur die Frage

Gruss
__________________
Die deutsche Rechtschreibung ist Freeware, daher darf man sie kostenlos nutzen.
Allerdings ist sie nicht Open Source, dies bedeutet man darf sie nicht verändern oder in veränderter Form
veröffentlichen.
end4win ist offline   Mit Zitat antworten
Alt 06.03.07, 19:16   #12 (permalink)
Themenstarter
 
Registriert seit: 21.04.06
dutchman2006 Leistung: Facit NTK
dutchman2006 eine Nachricht über ICQ schicken
Likes: 1
Standard

@PuppE/Oi!Alex: Den Auftrag vergibt der Kunde
@Viele Andere: Ihr habt recht. Ich sollte es selbst probieren. Mein größtes Problem ist ja in Wirklichkeit der Zeitfaktor. Ich hab sauviel zu tun und es geht sich alles hinten und vorne nicht aus. Danke trotzdem und wenn wer trotzdem noch Bock hat was zu programmimeren, kann er mir das gerne geben !

Danke!
dutchman
dutchman2006 ist offline   Mit Zitat antworten
Alt 08.03.07, 20:59   #13 (permalink)
 
Registriert seit: 25.07.06
valenterry Leistung: Facit NTK
Likes: 0
Standard

Äh so ja... ich hab nun die Drecksarbeit geleistet. Hoffentlich verbessern die Profis hier das noch. Es sind 2 Dateien. einmal "bestellung.html" und "bestellung.php"

"bestellung.php":
PHP-Code:
<?php

$fehler 
= array();
$vollstaendig true;

$pizza $_GET['pizza'];
if (!isset(
$pizza) || empty($pizza))
{
    
$vollstaendig false;
    
$fehler[] = 'Sie m&uuml;ssen eine Pizza ausw&auml;hlen.';
}
elseif (
$pizza != ('Salami' || 'Thunfisch' || 'El Paso' || 'Texas'))
{
    
$vollstaendig false;
    
$fehler[] = 'Sie m&uuml;ssen eine der vorgegebenen Pizzen ausw&auml;hlen.';
}

$groesse $_GET['pizza_groesse'];
if (
$groesse != ('gross' || 'mittel' || 'klein'))
{
    
$vollstaendig false;
    
$fehler[] = 'Sie m&uuml;ssen die Pizzagr&ouml;&szlig;e ausw&auml;hlen.';
}

//Daten der Person pruefen
$strasse $_GET['strasse'];
if (
strlen($strasse) < 3)
{
    
$vollstaendig false;
    
$fehler[] = 'Bitte geben Sie Ihren korrekten Stra&szlig;ennahmen an.';
}

$plz $_GET['plz'];
if (!
preg_match'/^[0-9]{5}$/'$plz))
{
    
$vollstaendig false;
    
$fehler[] = 'Bitte geben Sie Ihre korrekte Postleitzahl an.';
}

$telefon $_GET['telefon'];
if (!isset(
$telefon))
{
    
$vollstaendig false;
    
$fehler[] = 'Bitte geben Sie Ihre korrekte Telefon-Nummer an.';
}

$vorname    $_GET['vorname'];
if (!
is_string($vorname))
{
    
$vollstaendig false;
    
$fehler[] = 'Bitte geben Sie Ihren korrekten Vornamen an.';
}

$name $_GET['name'];
if (!
is_string($name))
{
    
$vollstaendig false;
    
$fehler[] = 'Bitte geben Sie Ihren korrekten Nachnamen an.';
}
//Daten der Person fertig geprueft

//Falls eine oder mehrere Angaben fehlerhaft oder nicht ausgefuellt wurden,
//Alle Fehler ausgeben und das Skript abbrechen.
if (!$vollstaendig)
{
    for(
$i=0$i<count($fehler); $i++)
    {
        echo 
$fehler[$i].'<br>';
    }
    
    
//die("<br>\n Bitte korrigieren Sie Ihre Angaben.")
}

//Vor SQL-Injektion schuetzen
$pizza     mysql_escape_string($pizza);
$groesse mysql_escape_string($groesse);
$strasse mysql_escape_string($strasse);
$plz         mysql_escape_string($plz);
$telefon mysql_escape_string($telefon);
$vorname mysql_escape_string($vorname);
$name     mysql_escape_string($name);


$db_link mysql_connect('localhost''root'''); //die Namen und Zugangsdaten musst du natuerlich anpassen

if(!@$db_link) die('Es gibt momentan technische Probleme, bitte versuchen Sie es in wenigen Minuten erneut.');

if(!@
mysql_select_db('mydb'$db_link)) die('Es gibt momentan technische Probleme, bitte versuchen Sie es in wenigen Minuten erneut.');

$sql "INSERT INTO pizza
    (pizza, pizzaGroesse, strasse, plz, telefon, vorname, name, datum)
VALUES
    (    '$pizza',
        '$groesse',
        '$strasse',
        '$plz',
        '$telefon',
        '$vorname',
        '$name',
        NOW()
        )"
;

mysql_query($sql);

echo 
"<p>
        bestellung:
        <p>
        pizza - $pizza <br>
        groesse - $groesse <br>
        strasse - $strasse <br>
        plz - $plz <br>
        telefonnr - $telefon <br>
        vorname - $vorname <br>
        nachname - $name"
;

?>
"bestellung.html"
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

  
  <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">

  
  <title>Pizzabestellung</title>
</head>


<body>

<h1 style="text-align: center;">Pizzabestellung</h1>

<form method="get" action="bestellung.php">
  <div style="text-align: center;"><span style="font-weight: bold;">
  </span><span style="font-weight: bold;">Art der
Pizza: </span><span style="font-weight: bold;">
  <select name="pizza">
  <option>Salami</option>
  <option>Thunfisch</option>
  <option>El Paso</option>
  <option>Texas</option>
  <option></option>
  </select>

  </span><br>

  <span style="font-weight: bold;">
  <br>

Gr&ouml;&szlig;e:<br>

  </span>gro&szlig; <span style="font-weight: bold;"><input name="pizza_groesse" value="Gro&szlig;" type="radio"><br>

  </span>
  <div style="text-align: center;">mittel<input checked="checked" name="pizza_groesse" value="mittel" type="radio"><span style="font-weight: bold;"></span><br>

  <span style="font-weight: bold;"></span></div>

klein <input name="pizza_groesse" value="klein" type="radio"><span style="font-weight: bold;"><br>

  <br>

  <br>

  <span style="font-weight: bold;">Adresse:<br>

  <br>

  </span></span>Strasse:<span style="font-weight: bold;"><span style="font-weight: bold;">&nbsp;<input size="40" name="strasse">&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-weight: bold;"><span style="font-weight: bold;"></span></span>PLZ: <span style="font-weight: bold;"><span style="font-weight: bold;"><input size="5" maxlength="5" name="plz"></span></span><span style="font-weight: bold;"><br>

  </span><br>

Telefon-Nummer: <input size="20" name="telefon"> &nbsp; &nbsp; &nbsp; &nbsp; <span style="font-weight: bold;"><br>

  <br>

  </span>Vorname:&nbsp;<input name="vorname">&nbsp;&nbsp;&nbsp; Nachnahme: &nbsp;<input name="name"><span style="font-weight: bold;"><br>

  <br>

  <br>

  <input value="Bestellung abschicken" name="abschicken" type="submit">&nbsp;&nbsp;&nbsp; <input name="reset" value="Zur&uuml;cksetzen" type="reset"><br>

  </span></div>

</form>

</body>
</html>
Natürlich musst du da noch nachbessern und nachdesignen. Es ist nicht gerade sehr Kundenfreundlich und es stecken auch noch ein paar Fehler drin.
Z.B. erstellt er in der Datenbank keinen Eintrag, aber ich hab bis jetzt noch nicht herausgefunden, warum nicht. Und auch was die Variablen angeht ist es nicht so toll. Einmal gibt es "pizza_groesse", dann "pizzaGroesse" usw.
Naja ich hab keine große Lust mehr die Feinheiten noch zu verbessern.
Vielleicht liefert es dir zumindest ein paar Denkanstöße.
valenterry ist offline   Mit Zitat antworten
Alt 08.03.07, 21:17   #14 (permalink)
 
Benutzerbild von Dreamer
 
Registriert seit: 27.05.02
Dreamer Leistung: Facit NTK
Likes: 0
Standard

Waren wir uns net einig das wir heir keine kompletten Codes reinsetzen(außer gegen Bezahlung).

Wäre das net besser anstatt "get" den Befehl "post" zu verwenden.

Code:
<form method="post" action="bestellung.php">
Werd mir das mal in ruhe anschaun und mal sehn was ich noch entdeck.
__________________
Seien wir realistisch, versuchen wir das Unmögliche.
Dreamer ist offline   Mit Zitat antworten
Alt 08.03.07, 21:44   #15 (permalink)
 
Registriert seit: 25.07.06
valenterry Leistung: Facit NTK
Likes: 0
Standard

[quote]Original von Dreamer
Waren wir uns net einig das wir heir keine kompletten Codes reinsetzen(außer gegen Bezahlung). [quote]

Naja zu spät, ich hatte ja schon angefangen.


Zitat:
Wäre das net besser anstatt "get" den Befehl "post" zu verwenden.

Code:
<form method="post" action="bestellung.php">
Werd mir das mal in ruhe anschaun und mal sehn was ich noch entdeck.
Ich weiß nicht genau, wieviele Zeichen GET maximal haben kann. Aber ich glaub es müsste reichen.
Wäre wirklich nett, wenn du dir das nochmal genau ansiehst. Das Abspeichern in die DB klappt nämlich auch nicht.
valenterry ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Pizzabestellung
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61