Hilfe zu Fehler - "Parse error"

Hallo Leute
Ich brauche dringend hilfe, den ich suche schon eine woche nach dem fehler.
ich weiß das der fehler : ein fehlendes ; oder " oder auch eine fehlende klammer sein kann. doch ich seh schon nichts mehr. Bitte kann sich jemand mein script ansehen ?
wäre super Danke
der ganze Fehler :Parse error: parse error in /webhome/10074338/public_html/warenkorb_1.php on line 37
Dies hier ist mein Warenkorb:
PHP:
<?php
include("datenbankv.php");
  include("authent.php");
error_reporting(E_ALL);
var_dump($_POST);
if(!isset($_GET['action'])) $_GET['action'] = "";

$nummer = $_SESSION['nummer'];

if ($_GET['action'] == "insert");
{
	   $id = $_POST['id'];
    $anzahl = $_POST['anzahl'];

   if ($anzahl == "0") header ("Location: warenkorb_1.php");
    else
{
$sql = "SELECT  name, preis FROM artikel
        WHERE id='$id'";
		$result = mysql_query($sql) or die (mysql_error());
   // echo $sql;
	$show = mysql_fetch_array($result);
	$name = $show['name'];
	$preis = $show['preis'];
$sql = "SELECT korbid FROM warenkorb
        WHERE nummer = ".$_SESSION['nummer']."
		AND id='$id'";
        $result = mysql_query($sql) or die (mysql_error());
		$num =mysql_num_rows($result);
		var_dump($_POST);
		//echo $sql;		
	if ($num == "0");
	
$sql = "INSERT INTO warenkorb (nummer, artikelid, anzahl)
		VALUES ('', '$nummer', '$id', '$anzahl')";
	   $result = mysql_query($sql) or die (mysql_error());
else
//////////////////////////////////////////////////
$sql = "UPDATE warenkorb SET anzahl=anzahl+$anzahl
        WHERE nummer=".$_SESSION['nummer']."
		AND id='$id'";
		mysql_query($sql) or die (mysql_error());
	
		 header("Location: warenkorb_1.php");
}
}
     if ($_GET["action"] == "edit");
{

     $korbid = $_GET["korbid"];
     $anzahl = $_POST["anzahl"];

     if ($anzahl == "0");
{
         mysql_query("DELETE FROM warenkorb WHERE korbid = '$korbid'");
         header("Location: warenkorb_1.php");
}
	 else
{
         mysql_query("UPDATE warenkorb SET anzahl = '$anzahl' WHERE korbid = '$korbid'");
         header("Location: warenkorb_1.php");
 }
 }

  if ($_GET["action"] == "delete");
{

     $korbid = $_GET["korbid"];

     mysql_query("DELETE FROM warenkorb WHERE korbid = '$korbid'");
     header("Location: warenkorb_1.php");
 }

 if ($_GET["action"] == "delete_all");
 { 
     mysql_query("DELETE FROM warenkorb WHERE nummer = ".$_SESSION['nummer']."");
     header("Location: warenkorb_1.php");
 }

 if ($_GET["action"] == "");
 {

 $result = mysql_query("SELECT korbid FROM warenkorb WHERE nummer = ".$_SESSION['nummer']."");
     $num = mysql_num_rows($result);

     if ($num == "0") $warenkorb = "leer";
     else $warenkorb = "voll";
     ?>
<html>
<head>
<title>Warenkorb</title></head>
<body><h1>Warenkorb</h1>
<h3>Folgenden Artikel haben Sie Ausgesucht</h3>
<table cellspacing=2 cellpadding=4 border=0>
<tr bgcolor="yellow">
<th>Artikel</th><th>Preis</th><th></th>
</tr>
        <?
   
          if ($warenkorb == "leer");
{
        ?>
  
   <b>Ihr Warenkorb ist leer!</b>
    
        <?
}
else
{
         $result = mysql_query("SELECT korbid, nummer, artikelid, anzahl FROM warenkorb
		  WHERE nummer= ".$_SESSION['nummer']."");
         while($row = mysql_fetch_object($result));
		// var_dump($_POST);
{
             $korbid = $row -> korbid;
			 $nummer = $row -> nummer;
             $artikelid = $row -> artikelid;
             $anzahl = $row -> anzahl;
			 
	print "<tr bgcolor='#cccccc'>";
	print "<td>".$row['name']."</td>";
	print "<td>".$row['preis']." Euro</td>";
	print "<td><a href='warenkorb_1.php?korbid=delete&korbid=$korbid'>Artikel löschen</a>";
	print "</tr>";

}
}	
?>
</table><p>
<a href="warenkorb_1.php?action=delete_all">Warenkorb l&ouml;schen</a><p><p>
<a href="artikel.php"> Zur&uuml;ck zur Artikelseite</a><p><p>
<a href="bestellung.php">Jetzt Bestellen</a><p><p>
</body>
</html>
<?
}
?>
 
Zuletzt bearbeitet von einem Moderator:
Ein Tip: Rücke deinen Code mal sauber ein dann sieht man sowas eher.
Ausserdem wieso machst du nach einem if ein Semikolon? Hab ich noch nie so gesehen.

PHP:
if($a = true){
     // Eingerückter Code
} 
else {
    // ...
}
Code Einrückung oder Code conventions allgemein sind sehr wichtig von anfang an zu lernen damit man später nicht umlernen muss bei großen Projekten denn übersichtlicher wird es sonst nicht!
 
Hi,
deine if Anweisungen sind falsch aufgebaut.
Nicht alle aber einige.
http://de.php.net/manual/de/control-structures.if.php

kann mich da nur anschliessen
Mach am besten als alle Nicht-Einzeilen-IF-Anweisungen (also auch alles was ein else besetzt) eine saubere Struktur:
PHP:
if (Var==Wert) {
    True-Block;
} else {
    False-Block;
}

Ausserdem wieso machst du nach einem if ein Semikolon? Hab ich noch nie so gesehen.

Das geht bei einzeilern. Sollte aber wirklich nur bei ganz kleinen schleifen gemacht werden.

PHP:
if (bedinung) mache xy;
else mache anderes;

//geht auch mit schleifen
for ($i = 0; $i <10; $i++) echo $i;

dies ist schön für wirklich ganz kleine Schleifen. Sobald mehr als 80 Zeichen pro Zeile gebraucht werden, sollte man es sein lassen.
 
yaslaw hat gesagt.:
Das geht bei einzeilern. Sollte aber wirklich nur bei ganz kleinen schleifen gemacht werden.

PHP:
if (bedinung) mache xy;
else mache anderes;

//geht auch mit schleifen
for ($i = 0; $a <10; $i++) echo $i;

dies ist schön für wirklich ganz kleine Schleifen. Sobald mehr als 80 Zeichen pro Zeile gebraucht werden, sollte man es sein lassen.
ich meinte auch ihre IF Deklaration bei der er nach der Runden Klammer ein Semikolon kommt....
Die Kurzschreibweise kenn ich...
 
Hi
also Leute ich habe noch mal das script durch geforstet und eingerückt.
konnte aber keinen fehler finden.
PHP:
<?php
include("datenbankv.php");
include("authent.php");
error_reporting(E_ALL);
var_dump($_POST);

if(!isset($_GET['action'])) $_GET['action'] = "";
       $nummer = $_SESSION['nummer'];

if ($_GET['action'] == "insert"){
       $id = $_POST['id'];
       $anzahl = $_POST['anzahl'];
 	
if ($anzahl == "0") header ("Location: warenkorb_1.php");
else{
$sql = "SELECT  name, preis FROM artikel
        WHERE id='$id'";
		$result = mysql_query($sql) or die (mysql_error());
   // echo $sql;
	    $show = mysql_fetch_array($result);
	    $name = $show['name'];
	    $preis = $show['preis'];
$sql = "SELECT korbid FROM warenkorb
        WHERE nummer = ".$_SESSION['nummer']."
		AND id='$id'";
        $result = mysql_query($sql) or die (mysql_error());
		$num =mysql_num_rows($result);
		var_dump($_POST);
		//echo $sql;		
if ($num == "0")

$sql = "INSERT INTO warenkorb (nummer, artikelid, anzahl)
		VALUES ('', '$nummer', '$id', '$anzahl')";
	    $result = mysql_query($sql) or die (mysql_error());
else

$sql = "UPDATE warenkorb SET anzahl=anzahl+$anzahl
        WHERE nummer=".$_SESSION['nummer']."
		AND id='$id'";
		mysql_query($sql) or die (mysql_error());
	    header("Location: warenkorb_1.php");
}
}
if ($_GET["action"] == "edit"){
        $korbid = $_GET["korbid"];
        $anzahl = $_POST["anzahl"];

if ($anzahl == "0"){
         mysql_query("DELETE FROM warenkorb WHERE korbid = '$korbid'");
         header("Location: warenkorb_1.php");
}else{
         mysql_query("UPDATE warenkorb SET anzahl = '$anzahl' WHERE korbid = '$korbid'");
         header("Location: warenkorb_1.php");
 }
 }

if ($_GET["action"] == "delete"){
        $korbid = $_GET["korbid"];

       mysql_query("DELETE FROM warenkorb WHERE korbid = '$korbid'");
       header("Location: warenkorb_1.php");
 
if ($_GET["action"] == "delete_all"){ 
       mysql_query("DELETE FROM warenkorb WHERE nummer = ".$_SESSION['nummer']."");
       header("Location: warenkorb_1.php");
 }
if ($_GET["action"] == ""){
       $result = mysql_query("SELECT korbid FROM warenkorb WHERE nummer = ".$_SESSION['nummer']."");
       $num = mysql_num_rows($result);

if ($num == "0") $warenkorb = "leer";
else $warenkorb = "voll";
?>
<html>
<head>
<title>Warenkorb</title></head>
<body><h1>Warenkorb</h1>
<h3>Folgenden Artikel haben Sie Ausgesucht</h3>
<table cellspacing=2 cellpadding=4 border=0>
<tr bgcolor="yellow">
<th>Artikel</th><th>Preis</th><th></th>
</tr>
<?
if ($warenkorb == "leer"){
?>
   <b>Ihr Warenkorb ist leer!</b>
<?
}else{
      $result = mysql_query("SELECT korbid, nummer, artikelid, anzahl FROM warenkorb
      WHERE nummer= ".$_SESSION['nummer']."");
      while($row = mysql_fetch_object($result));
	  // var_dump($_POST);
{
     $korbid = $row -> korbid;
	 $nummer = $row -> nummer;
     $artikelid = $row -> artikelid;
     $anzahl = $row -> anzahl;
			 
	print "<tr bgcolor='#cccccc'>";
	print "<td>".$row['name']."</td>";
	print "<td>".$row['preis']." Euro</td>";
	print "<td><a href='warenkorb_1.php?korbid=delete&korbid=$korbid'>Artikel löschen</a>";
	print "</tr>";
}
}	
?>
</table><p>
<a href="warenkorb_1.php?action=delete_all">Warenkorb l&ouml;schen</a><p><p>
<a href="artikel.php"> Zur&uuml;ck zur Artikelseite</a><p><p>
<a href="bestellung.php">Jetzt Bestellen</a><p><p>
</body>
</html>
<?
}
?>
 
Zuletzt bearbeitet von einem Moderator:
Zurück