- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 08-02-2016, 17:34
Michael47
 Registrierter Benutzer
Links : Onlinestatus : Michael47 ist offline
Registriert seit: Feb 2016
Beiträge: 10
Michael47 befindet sich auf einem aufstrebenden Ast
Standard Bestellformular

Hallo Leute!
Ich heiße Michael und bin neu hier und natürlich auch noch recht neu im Bereich PHP. Ich mache gerade einen Fernlehrgang im Bereich Internetspezialist und arbeite zur Zeit mein Übungsheft durch. Bis dato hat alles problemlos funktioniert. Ich habe hier ein Beispielskript, dass die existierenden Pizzas aus der Datenbank liest und diese in Html tabellarisch darstellt. Es zeigt mir einen Fehler an und ich kann - obwohl ich die Zeile weiß - nicht finden. Ich hoffe mir kann hier jemand weiterhelfen.
PHP-Code:
<?php
$host 
"localhost";
$user "root";
$passwort "";
$verbindung mysql_connect($host$user$passwort);
if(
$verbindung)
{
    
//echo "Verbindung hergestellt.<br>\n";
    // Jetzt kann eine Abfrage ausgeführt werden
}
else
{
    echo 
"Verbindung konnte nicht hergestellt werden!<br>\n";
    echo 
mysql_errno() . ": " mysql_error() . "<br>\n";
}
mysql_select_db("pizzadb");
$result mysql_query("SELECT Artikel_nr, Artikelname, Preis FROM
artikel"
) or die ("ung&uuml;ltige Anweisung ");
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 //EN">
<html>
    <head>
        <title>Katalog Version 2</title>
        </head>
        <body>
        <h2>Willkommen beim Pizza-Bestell-Service</h2>
            <table width="280" border="1" cellpadding="0"
cellspacing="2" bgcolor="#999999">
<?php
while($row mysql_fetch_object($result))
{
?>
        <tr>
            <td width="30" bgcolor="#ffffff" align="center">
                <?php echo "$row->Artikel_nr";  ?>
            </td>
            <td width="190"bgcolor="#ffffff" align="center">
                <a href=artikel.php?artikelnummer=<?php echo "$row-
                    <Artikel_nr"
?></font></a>
                    <font size="-1" color="#008080"><?php echo "$row-
                    >Artikelname"
?></font></a>
            </td>
            <td width="60" bgcolor="#ffffff" align="center">
                Preis&nbsp;<? echo "$row->Preis"?>
            </td>
        </tr>
<?php
 
}
 
mysql_close();
 
?>
        </table>

        <h2>Pizza ausw&auml;hlen</h2>
        <form action="bestellkontrolle.php">
            <table border="0">
                <tr>
                    <td style="width:300px;">
                        <table border="0" cellpadding="3">
                            <tr>
                                <th>EinzelbestellNr.</th>
                                <th>PizzaNr.</th>
                            </tr>
                            <tr>
                                <td>1.</td>
                                <td><input type="text"
name="PizzaNr1" value="0"></input></td>
                                <td><input type="text"
name="Anzahl1" value="0"></input></td>
                            </tr>
                            <tr>
                                <td>2.</td>
                                <td><input type="text"
name="PizzaNr2" value="0"></input></td>
                                <td><input type="text"
name="Anzahl2" value="0"></input></td>
                            </tr>
                            <tr>
                                <td>3.</td>
                                <td><input type="text"
name="PizzaNr3" value="0"></input></td>
                                <td><input type="text"
name="Anzahl3" value="0"></input></td>
                            </tr>
                            <tr>
                                <td>4.</td>
                                <td><input type="text"
name="PizzaNr4" value="0"></input></td>
                                <td><input type="text"
name="Anzahl4" value="0"></input></td>
                            </tr>
                            <tr>
                                <td>5.</td>
                                <td><input type="text"
name="PizzaNr5" value="0"></input></td>
                                <td><input type="text"
name="Anzahl5" value="0"></input></td>
                            </tr>
                            <tr>
                                <td>6.</td>
                                <td><input type="text"
name="PizzaNr6" value="0"></input></td>
                                <td><input type="text"
name="Anzahl6" value="0"></input></td>
                            </tr>
                        </table>
                    </td>
                    <td style="width:50px;"></td>
                    <td style="width:300px;">
                        <table border="0" cellpadding="3">
                            <tr>
                                <th>Anschrift</th>
                            </tr>
                            <tr>
                                <td>Vorname:</td>
                                <td><input type="text"
name="vorname" value="Vorname"
onfocus="this.value=''"></input></td>
                            </tr>
                            <tr>
                                <td>Nachname:</td>
                                <td><input type="text"
name="nachname" value="Nachname"
onfocus="this.value=''"></input></td>
                            </tr>
                            <tr>
                                <td>Adresse und
Hausnummer:</td>
                                <td><input type="text"
name="adresse" value="Adresse + HausNr."
onfocus="this.value=''"></input></td>
                            </tr>
                            <tr>
                                <td>PLZ und
Wohnort:</td>
                                <td><input type="text"
name="ort" value="PLZ + Wohnort"
onfocus="this,value=''"></input></td>
                            </tr>
                        </table>
                    </td>
                </tr>
            </table>
            <br>
            <input type="submit" name="Bestellung" value="Weiter
mit Bestellung"></input>
                <input type="reset" value="Abbrechen"></input>
          </form>
      </body>
</html>
Mit Zitat antworten
  #2 (permalink)  
Alt 08-02-2016, 17:48
TBT
  Moderator
Links : Onlinestatus : TBT ist offline
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
TBT befindet sich auf einem aufstrebenden Ast
TBT eine Nachricht über ICQ schicken TBT eine Nachricht über AIM schicken TBT eine Nachricht über Yahoo! schicken
Standard

die Fehlermeldung möchtest du uns nicht verraten?

nach kurzen drüberfliegen

"$row-<Artikel_nr";

soll wohl

$row->Artikel_nr;

heißen. Lass aber bitte die Anführungszeichen um Variablen weg, die haben keinen Sinn
__________________
TBT

Die zwei wichtigsten Regeln für eine berufliche Karriere:
1. Verrate niemals alles was du weißt!


PHP 2 AllPatrizier II als Browsergame: Galiator Trader

Mit Zitat antworten
  #3 (permalink)  
Alt 08-02-2016, 17:51
Michael47
 Registrierter Benutzer
Links : Onlinestatus : Michael47 ist offline
Registriert seit: Feb 2016
Beiträge: 10
Michael47 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von TBT Beitrag anzeigen
die Fehlermeldung möchtest du uns nicht verraten?

nach kurzen drüberfliegen

"$row-<Artikel_nr";

soll wohl

$row->Artikel_nr;

heißen. Lass aber bitte die Anführungszeichen um Variablen weg, die haben keinen Sinn
Die Fehlermeldung schaut dann so aus:
Miniaturansicht angehängter Grafiken
Bestellformular-unbenannt.png  
Mit Zitat antworten
  #4 (permalink)  
Alt 08-02-2016, 17:55
Michael47
 Registrierter Benutzer
Links : Onlinestatus : Michael47 ist offline
Registriert seit: Feb 2016
Beiträge: 10
Michael47 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Michael47 Beitrag anzeigen
Die Fehlermeldung schaut dann so aus:
Alles klar es funktioniert. Endlich. Ich war schon am Verzweifeln., aber ich versteh´trotzdem noch nicht, warum mir die Preise nicht angezeigt werden.
Mit Zitat antworten
  #5 (permalink)  
Alt 08-02-2016, 19:43
Michael47
 Registrierter Benutzer
Links : Onlinestatus : Michael47 ist offline
Registriert seit: Feb 2016
Beiträge: 10
Michael47 befindet sich auf einem aufstrebenden Ast
Standard Formular für Bestellkontrolle

So. Das Bestellformular funktioniert, aber das dazugehörige Bestellkontroll-Formular hat noch irgendwo einen Haken. Der Fehler, der mir angezeigt wird ist dieser: Parse error: syntax error, unexpected end of file in C:\xampp\htdocs\bestellkontrolle.php on line 106

Die Zeile 106 hab ich ja gefunden. Ist ja nicht schwer. Ist das Ende des Skripts. Nur steht da nichts mehr. Dann versteh ich die Fehlermeldung nicht, wenn da nichts mehr ist!
Vielleicht hat von euch jemand eine Idee.
Hier mal das Skript:
PHP-Code:
<?php
//Formularvariablen einlesen
$vorname $_RQUEST["vorname"];
$nachname $_REQUEST["nachname"];
$adresse $_REQUEST["adresse"];
$ort $_REQUEST["ort"];
//Bereite DB-Verbindung vor
$host "localhost";
$user "root";
$passwort "";
$verbindung mysql_connect($host$user$passwort);
if(
$verbindung)
{
    
// echo "Verbindung hergestellt.<br>\n";
    // Jetzt kann eine Abfrage ausgeführt werden
}
else
{
    echo 
"Verbindung konnte nicht hergestellt werden!<br>\n";
    echo 
mysql_errno() . ": " mysql_error() . "<br>\n";
}
mysql_select_db("pizzadb");
?>
<html>
<head>
<title>Bestell-Kontrolle</title></head>
<body>
    <b>Liefer-Adresse:</b><br />
    <table border="0" bgcolor="#eeeeee">
        <tr>
            <td>Vorname:</td>
            <td><?php echo $vornmame ?></td>
        </tr>
        <tr>
            <td>Nachname:</td>
            <td><?php echo $nachname ?></td>
        </tr>
        <tr>
            <td>Adresse:</td>
            <td><?php echo $adresse ?></td>
        </tr>
        <tr>
            <td>Wohnort:</td>
            <td><?php echo $ort ?></td>
        </tr>
    </table>
    <hr>
    <?php $gesamt 0;
          
$pizza = array(); //Haelt die bestellten Pizza- Nummern
          
for ($i 0$i 6$i++) {
              
$pizza[$i] =null;
              if (
$_REQUEST["PizzaNr" . ($i 1)] != "")
              {
                  
$pizza[$i] = $_REQUEST["PizzaNr" . ($i 1)];
              }
          }
          
$anzahl arrray(); //Haelt die Anzahl der jeweiligen Pizzas
          
for ($i 0$i 6$i++) {
              
$anzahl[$i] = 0;
              if (
$_REQUEST["PizzaNr" . ($i 1)] > "0")
                {
                    
$anzahl [$i] = $_REQUEST["Anzahl". ($i 1)];
                }
          }
          
$artikelpreis = array(); //Haelt die Preise der Pizzas
          
$preis = array();        //Haelt den Gesamtpreis pro Pizza
          // Initialisiere Arrays mit 0.
          
for ($i 0$i 6$i++) {
              
$artikelpreis[$i] =0;
              
$preis[$i] = 0;
          }
          
//Hole Preis der jeweiligen Pizza und multipliziere mit
          //der Anzahl, um den jeweiligen Gesamtpreis zu ermitteln.
          
for ($i 0$i 6$i++) {
              if (
$anzahl[$i] > 0) {
                  
$SQLStr "SELECT Preis FROM artikel WHERE
                  Artikel_nr = " 
$pizza[$i] . ";";
                  
$result mysql_query($SQLStr) or die
                  (
"Ung&uuml;ltige Anweisung ");

                  if (
$result == null) { ?>
                  Result/RecordSet leer!
                  <? }
                  else {
                      while(
$row mysql_fetch_object($result))
                        {
                            
$artikelpreis[$i] = $row->Preis ;
                        } 
// while (rs.next())
                        //Hier wird der Gesamtpreis errechnet.
                        
$preis[$i]=$anzahl[$i]*$artikelpreis[$i];
                        
$gesamt += $preis[$i];

                        
//Es folgt die Ausgabe fuer den Besteller
                        
echo $anzahl[$i] . " mal PizzaNr. " .
                        
$pizza[$i] . " macht " $preis[$i] ."
                        Euro<br>"
;
                  } 
// else
            
// if (anzahl1 > 0)
        
// for (int i = 0; i < 6; i++) {
        
?>
        <hr>
        Gesamtpreis: <b><?php echo $gesamt?> Euro inkl. MwST</b>
        <?php mysql_close(); ?>
    </body>
</html>
Mit Zitat antworten
  #6 (permalink)  
Alt 08-02-2016, 23:14
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.206
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Der Fehler tritt üblicherweise auf, wenn die Zahl der geschweiften Klammern nicht stimmt.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #7 (permalink)  
Alt 09-02-2016, 06:01
Michael47
 Registrierter Benutzer
Links : Onlinestatus : Michael47 ist offline
Registriert seit: Feb 2016
Beiträge: 10
Michael47 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von wahsaga Beitrag anzeigen
Der Fehler tritt üblicherweise auf, wenn die Zahl der geschweiften Klammern nicht stimmt.
Ich hab da nochmal drüber geschaut und ich kann keinen Fehler finden.
Mit Zitat antworten
  #8 (permalink)  
Alt 09-02-2016, 17:28
mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 382
mermshaus wird schon bald berühmt werden
Standard

Du hast short_open_tag in der PHP-Konfiguration nicht aktiviert.

- PHP: Description of core php.ini directives - Manual

Aktiviere es (davon rate ich ab) oder ersetze <? durch <?php (dazu rate ich aus Kompatibilitätsgründen).

Am Rande:

- Die mysql-Erweiterung ist veraltet und sollte nicht mehr genutzt werden. Nutze mysqli oder pdo.
- Der Code behandelt keine Kontextwechsel. http://wiki.selfhtml.org/wiki/PHP/An...Kontextwechsel

Geändert von mermshaus (09-02-2016 um 17:32 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 09-02-2016, 17:50
Michael47
 Registrierter Benutzer
Links : Onlinestatus : Michael47 ist offline
Registriert seit: Feb 2016
Beiträge: 10
Michael47 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von mermshaus Beitrag anzeigen
Du hast short_open_tag in der PHP-Konfiguration nicht aktiviert.

- PHP: Description of core php.ini directives - Manual

Aktiviere es (davon rate ich ab) oder ersetze <? durch <?php (dazu rate ich aus Kompatibilitätsgründen).

Am Rande:

- Die mysql-Erweiterung ist veraltet und sollte nicht mehr genutzt werden. Nutze mysqli oder pdo.
- Der Code behandelt keine Kontextwechsel. Programmiertechnik/Kontextwechsel ? SELFHTML-Wiki
Das <?php hab ich ja bei jedem Öffnen dabei! Ich weiß nicht. Ich kenn mich nicht mehr aus. Ich kann ändern, oder umstellen, es funktioniert überhaupt nicht.
Mit Zitat antworten
  #10 (permalink)  
Alt 09-02-2016, 18:00
mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 382
mermshaus wird schon bald berühmt werden
Standard

Im geposteten Code (Beitrag #5) hast du das an einer Stelle nicht.

Ausschnitt:

Code:
                  ("Ung&uuml;ltige Anweisung ");

                  if ($result == null) { ?>
                  Result/RecordSet leer!
--->              <? }
                  else {
                      while($row = mysql_fetch_object($result))
                        {
                            $artikelpreis[$i] = $row->Preis ;
                        } // while (rs.next())
Mit Zitat antworten
  #11 (permalink)  
Alt 09-02-2016, 18:27
Michael47
 Registrierter Benutzer
Links : Onlinestatus : Michael47 ist offline
Registriert seit: Feb 2016
Beiträge: 10
Michael47 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von mermshaus Beitrag anzeigen
Im geposteten Code (Beitrag #5) hast du das an einer Stelle nicht.

Ausschnitt:

Code:
                  ("Ung&uuml;ltige Anweisung ");

                  if ($result == null) { ?>
                  Result/RecordSet leer!
--->              <? }
                  else {
                      while($row = mysql_fetch_object($result))
                        {
                            $artikelpreis[$i] = $row->Preis ;
                        } // while (rs.next())
Also nur bei <?php öffnen, oder auch beim Schließen?
Mit Zitat antworten
  #12 (permalink)  
Alt 09-02-2016, 19:28
mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 382
mermshaus wird schon bald berühmt werden
Standard

Nur beim Öffnen.

<?php … ?>
Mit Zitat antworten
  #13 (permalink)  
Alt 09-02-2016, 19:37
Michael47
 Registrierter Benutzer
Links : Onlinestatus : Michael47 ist offline
Registriert seit: Feb 2016
Beiträge: 10
Michael47 befindet sich auf einem aufstrebenden Ast
Standard

Ok hab ich mir fast schon gedacht. Aber diese Fehler zeigts mir trotzdem noch an:
Miniaturansicht angehängter Grafiken
Bestellformular-unbenannt3.png  
Mit Zitat antworten
  #14 (permalink)  
Alt 09-02-2016, 20:58
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.359
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Die Fehlermeldungen sagen doch eh alles. Warum liest du sie nicht?

Du greifst auf Array-Indexe zu, die nicht existieren.

Außerdem heißt es array() und nicht arrray().
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Script] Bestellformular starsk8er Apps und PHP Script Gesuche 0 13-03-2009 12:02
Bestellformular gesucht KW22 Archiv / Trash 4 14-11-2008 21:33
Bestellformular Prodater Apps und PHP Script Gesuche 2 02-08-2006 02:21
Bestellformular prophet` PHP Developer Forum 3 08-06-2004 16:53
Bestellformular für HP HisDivineGrace PHP Developer Forum 3 11-07-2002 17:52

Themen-Optionen
Thema bewerten
Thema bewerten:

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 are an
Pingbacks are an
Refbacks are an


PHP News

Zeit ist Geld, PC einfach selbst reparieren!
Zeit ist Geld, PC einfach selbst reparieren!Wenn der PC nicht richtig läuft, wirft sie das in Ihrem Arbeitsalltag meist zurück. Dabei können Sie einige Probleme mit relativ wenig Aufwand und ohne intime Kenntnisse Ihres Rechners selbst lösene

18.04.2016 | Berni

Die wichtigsten Rahmenbedingungen für das Hosting
Die wichtigsten Rahmenbedingungen für das HostingGuter Webspace wird in der heutigen Zeit immer wichtiger. Die Scripte werden moderner und fordern höhere Leistung, der allgemeine Traffic im Internet nimmt zu.

17.08.2015 | Berni


 

Aktuelle PHP Scripte

LEPTON CMS ansehen LEPTON CMS

LEPTON CMS ist eine weiterentwickelte Ableitung (Fork) des CMS „WebsiteBaker“ der Version 2.8.1. Das Entwicklerteam hat den ursprünglichen „Geist” erhalten, der dieses Content Management System und seine damalige Community unter Leitung des Gründers Ryan

27.06.2016 erpe | Kategorie: PHP/ CMS
CometD ansehen CometD

CometD is a scalable HTTP-based event routing bus

27.06.2016 Berni | Kategorie: JAVASCRIPT/ Bibliothek - Framework
OpenEMM 5.5 - freies E-Mail-Marketing

E-Mail-Marketing Script mit Auswertung der Öffnungsrate der E-Mails, die mit dem System verschickt wurden. Diese kann nun grafisch im Zeitverlauf nach Stunde, Tag und Woche dargestellt werden. Die Software zeigt auf, wann die Empfänger besonders aktiv sin

23.06.2016 Berni | Kategorie: PHP/ Mail
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:34 Uhr.