• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Ausgeben von Daten

Doty

New member
hy!

Im Formular sollten Daten, welche schon in einer Datenbank stehen geändert werden. Die alten Daten sollten in den Eingabefelder angezeigt werden um sich leichter zurecht zu finden.
Aus irgendeinen Grund steht in der mysql_query aber nicht die richtigen Daten. Warum?

Das ist der Code:
PHP:
<html>
<head>
<title>Datenregister</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>
<img src="bilder/logo.gif" width="97" height="93" align="left" alt="hintergrund">
<h1 align="center">SMOG</h1>
<br>
<br>
<h3>Kurs bearbeiten</h3>

<form name="formular" method="post" action="bearbeitekurs.php">
<?php
	include("dbanbindung.php");

   $k = $_GET["kurs_id"];
echo "$k"; //hier steht wirklich die übergebene kurs_id
   print "<input type=\"hidden\" name=\"kurs_id\" value=\"$k\">"; 

   $result = mysql_query("SELECT * FROM kurse WHERE kursID = $k"); 
	echo "$result"; //hier wird nur "Resource id#4" ausgegeben
   $row = mysql_fetch_assoc($result);

	$kurs = $row["kursname"];
	$datum = $row["datum"];
   	$ort = $row["ort"];
	$beginn = $row["beginn"];
	$ende = $row["ende"];
	$leiter = $row["leiter"];
	$bes = $row["beschreibung"];
?>

Kursname:<br>
<input type="text" name="kursname" size="25" value"<?php $kurs ?>"><br>
Datum:<br>
<input type="text" name="datum" size="25" value"<?php $datum ?>><br>
Ort:<br>
<input type="text" name="Ort" size="25" value"<?php $ort ?>><br>
Beginnzeit:<br>
<input type="text" name="beginn" size="25"  value"<?php $beginn ?>><br>
Endzeit:<br>
<input type="text" name="ende" size="25"  value"<?php $ende ?>><br>
Kursleiter:<br>
<input type="text" name="leiter" size="30" value"<?php $leiter ?>><br>
Kurzbeschreibung:<br>
<textarea name="beschreibung" cols="50" rows="10"  value"<?php $bes ?>></textarea>
<br>
<input type="submit" value="Kurs ändern" name="erstellen">
</form>
</body>
</html>

Ich hoffe ihr seht was ich nicht sehe!1 *gg*

Lg Doty
 
Dein Code ist anfällig für SQL-Injection.

echo $result soll auch eine Resource Id sein. Da sollen ja keine Daten drin stehen. Für mich sieht das nach nem leeren Result aus, sonst würde mysql_fetch_assoc nen Warning liefern.

Mal mit error_reporting(E_ALL) arbeiten (am besten zu beginn des Scripts setzen).
Probier mal die von dir zusammengebauten query in phpmyadmin ($query = "SELECT * FROM kurse WHERE kursID = $k"; echo $query; und das dan kopieren und in phpmyadmin rein) aus.
 
Also das hab ich jetzt versucht:
PHP:
<?php
	error_reporting(E_ALL);

	include("dbanbindung.php");

   $k = $_GET["kurs_id"];
   	echo "$k"; //hier steht wirklich die übergebene kurs_id
   print "<input type=\"hidden\" name=\"kurs_id\" value=\"$k\">"; 

   $query = "SELECT * FROM kurse WHERE kursID = $k";
	echo "$query"; //hier wird auch das richtige ausgegeben
   $result = mysql_query("$query"); 
	echo "$result"; //hier wird nur "Resource id#4" ausgegeben
   $row = mysql_fetch_assoc($result);

	$kurs = $row["kursname"];
	$datum = $row["datum"];
   	$ort = $row["ort"];
	$beginn = $row["beginn"];
	$ende = $row["ende"];
	$kursleiter = $row["leiter"]; //Zeile 35
	$bes = $row["beschreibung"];
?>
Das ist der Fehler:
Notice: Undefined index: leiter in /home/WS09_smog/public_html/PHP/Kurse/Kursbearbeiten.php on line 35

MFG Doty
 
Zurück
Oben