Pop up Formluar dynamisch füllen

Jantz

Erfahrenes Mitglied
Hallo,

habe vor ein kleines Newsscripot zu schreiben. Hab jedoch eine Verständnis Frage bei einem dynamisch gefülltem Popup Formular.


Kurz bisschen was zur Datenbank:

derzeit bestehen 2 Tabellen:

dj_autor
dj_news

Abhängigkeit: Ein Autor kann meherer Artikel schreiben (n:1)
Deshalb habe ich den Primary Key in die Tabelle dj_news mit reingezogen.

Ich möchte das Popup "autor" dynamisch mit den inhalten aus der Datenbank füllen. Das Klappt auch soweit, hier mein Code:

news_schreiben.php

PHP:
<html>
<head><title></title></head>
<body>
<p>News eintrragen</p>
<p>
	<form action="news_eintragen.php" method="POST">
	
	Autor:
	<select name="autor" size="1">
	<?php
	
	include("autor.php");
	
	?>
	</select><br><br>
	
	Topic:
	<textarea cols="50" rows="1" name="topic">Topic eintragen...</textarea><br>
	
	News:
	<textarea cols="50" rows="30" name="news">News eintragen...</textarea><br><br>
	
	
	<input type="submit">  <input type="reset">
	
	</form>

</p>
</body>
</html>

Das php Script, welches das Pupop füllt, sieht folgender mase aus:

PHP:
<?php

		/* Datenbank Script implementieren */
		include("db.php");
	
		/* Datenbankserver + Datenbank Connection */
		$dbh=mysql_connect("$db_host","$db_user","$db_pass") OR DIE(mysql_error());
		mysql_select_db("$db_1") OR DIE(mysql_error());
	
		/* SQL Befehl -> $result_1 */
		$sql_1="SELECT * 
				FROM dj_autor";
				
		$result_1=mysql_query($sql_1);
		
		while($d1 = mysql_fetch_assoc($result_1))
		{
			echo "<option values=". $d1["aid"] .">" . $d1["aid"] ."</option>";
		}
Soweit funktionert das jetzt auch. Jedoch wollte ich es so haben, das er mir den Namen des Autors anzeigt, also habe ich im Script folgende Zeile in der While geändert:

PHP:
echo "<option values=". $d1["aid"] .">" . $d1["autor"] ."</option>";

Beim Absenden, sollte mir das Script dann doch die ID weitergeben. Ich bekomm jedoch immer den Namen des Autors, das führt zu einem Fehler in der WHERE clause in der eigentlichen News ausgabe.

Falls ich es jedoch so mache, das er mir im Popup die ID anzeigt, wird diese auch korrekt weitergegeben und alles funktioniert.

Hab ich nur ein Verständnisproblem in Bezug auf Popup Menüs? O_o

Danke euch
 
Zuletzt bearbeitet:
1. value, nicht values
2. den String in " " setzen

So sollte es funktionieren:

PHP:
echo "<option value=\"".$d1['aid']."\">".$d1['autor']."</option>";

Ich denke der Fehler war einfach, dass du values geschrieben hast. Deshalb hatte die Auswahl natürlich keinen vorgegebenen Wert und hat deshalb eben das genommen was es bei der Auswahlliste anzeigt, also den Author bzw. die ID wenn sie ausgegeben wird.
Naja, probier einfach mal meine Zeile und es sollte gehen.


gruß,
alex
 
Zuletzt bearbeitet:
kein Spam

Nur mal nebenbei, was du meinst ist ein DropDown Menü - ein PopUp hingegen ist ein neues Fenster, das (wie der Name es sagt) aufpopt :p :-)
 
Zurück