Undefined index: pid

Zack

cookies vader
Hallo,
Ich lese aus einer Datenbank preise aus. Nach dem sich ein Admin eingeloogt hat soll er diese ändern können. Soweit so gut, an der stelle des Ubdatens werden mir folgende Fehlermeldungen angezeigt:

Notice: Undefined index: pid in C:\Dokumente und Einstellungen\Zack\Eigene Dateien\php\fewo-renner\content\preise.php on line 6

Warning: Invalid argument supplied for foreach() in C:\Dokumente und Einstellungen\Zack\Eigene Dateien\php\fewo-renner\content\preise.php on line 6

Notice: Undefined variable: sql in C:\Dokumente und Einstellungen\Zack\Eigene Dateien\php\fewo-renner\content\preise.php on line 15
Query was empty

was mich dann schon irgendwie verwirrt. Ich lege ganz normal alles fest und defniere alle namen richtig.

PHP:
if (isset($_POST['savehs']) && !empty($_POST['savehs']))
{
	foreach ($_POST['pid'] as $pid){

	$sql ="UPDATE
			  preise
		  SET
		      preis = '".$_POST['preis']."'
          WHERE
              pid = '".$pid."';";
	}
	$result = mysql_query($sql) OR die(mysql_error());
	$row = mysql_fetch_assoc($result);

}else{
	if (isset($_POST['ediths']) && !empty($_POST['ediths']))
	{
		$sql="SELECT * FROM preise WHERE saison = 'hs'";
		$result = mysql_query($sql) OR die(mysql_error());
		echo "<form action=\"index.php?section=preise\" method=\"POST\">" .
			 "<table width=\"100%\" border=\"0\">";
		while ($row = mysql_fetch_assoc($result))
		{
			echo "<tr>" .
					"<td>".$row['art']."</td>" .
					"<td><input type=\"text\" name=\"preis\" value=".$row['preis'].">,- Euro</td>" .
					"<imput type=\"hidden\" name=\"pid\" value=".$row['pid'].">" .
     			"</tr>";
		}
		echo "<tr>" .
				"<td>Alle Preise zu züglich Kurtaxe der Stadt Altenberg</td><td></td>" .
			 "</tr>";
	echo "</table>" .
			"<input type=\"submit\" name=\"savehs\" value=\" Speichern \">" .
		 "</from>";

	}else{
		$sql="SELECT * FROM preise WHERE saison = 'hs'";
		$result = mysql_query($sql) OR die(mysql_error());
		echo "<h2> Hauptsaison</h2>" .
				"<table width=\"100%\" border=\"0\">";
			while ($row = mysql_fetch_assoc($result))
			{
				echo "<tr>" .
						"<td>".$row['art']."</td><td>".$row['preis'].",- Euro</td>" .
	     			"</tr>";
			}
			echo "<tr>" .
					"<td>Alle Preise zu züglich Kurtaxe der Stadt Altenberg</td><td></td>" .
			 	"</tr>";
		echo "</table>" .
				"<br />";

		if (isset($_SESSION['login'])  && !empty($_SESSION['login'])){
		echo "<form action=\"index.php?section=preise\" method=\"POST\">" .
	    	  "<input type=\"submit\" name=\"ediths\" value=\" Bearbeiten \">" .
		 	"</form>";
		}// Login?
	}// get POST edit HS
}// Else post = savehs
 
Das sind ja alles Folgefehler des Ersten und da scheint er über POST keine Daten für 'pid' zu erhalten. Schau dir doch am Besten mal das Formular im Quelltest an. Speziell, was da beim "hidden" Feld unter value steht.
Wenn da nichts steht ist die Fehlerquelle wohl, dass er aus der Datenbank keine Werte für pid bekommt.
 
Zurück