Andreas Steinböck: URL und Variable

Beitrag lesen

Hallo Zusammen,
Ich habe da ein kleines Problem mit einer Variablenübergabe in einer
URL. Das ganze Szenario spielt sich über fünf php files ab.
Hier sind einmal zum besseren Verständnis die Quellcodes.

config.php

<?
//Verbindung herstellen
$db = mysql_connect("localhost","", "");
mysql_select_db("faq",$db);

?>

index.php

<? include ("config.php"); ?>
<html>
<style>
a:link {color:#000000; text-decoration:none; font-family:Verdana, Geneva, Arial,; font-size:8pt;}
a:active {color:#000000; text-decoration:none; font-family:Verdana, Geneva, Arial,; font-size:8pt;}
a:visited {color:#000000; text-decoration:none; font-family:Verdana, Geneva, Arial,; font-size:8pt;}
a:hover {color:#ff0000; text-decoration:none; font-family:Verdana, Geneva, Arial,; font-size:8pt;}
td {font-family : verdana,helvetica; color : black; font-size : 10pt;}
</style>
<body bgcolor="#336699">
<div align="center">

<table border="0" width="80%" cellspacing="1" cellpadding="3" bgcolor="#000000">
<tr>
<td bgcolor="#cacaca">Hardware</td>
</tr>
<tr>
<td bgcolor="#e2e2e2"><? include ('auslesen_hardware.php'); ?></td>
</tr>
</table>
<br>

<table border="0" width="80%" cellspacing="1" cellpadding="3" bgcolor="#000000">
<tr>
<td bgcolor="#cacaca" align="center">
Stellen Sie hier Ihre Frage zu: <a href="eingabe_hardware.php">Hardware</a>
</td>
</tr>
</table>
</body>
</html>

auslesen_hardware.php

<?
//Verbindung herstellen
include ("config.php");

//Auslesen der Daten für Hardware
$result = mysql_query("SELECT * FROM hardware",$db);
?>

<? while ($items = mysql_fetch_array($result)) { ?>

<? echo $items[id_hardware]; ?> 
<a href="#" onclick="window.open('antwort_hardware.php','','width=500,height=200')"><? echo $items[frage_hardware]; ?></a><br>

<? } ?>

antwort_hardware.php

<?
//Verbindung herstellen
include ("config.php");

//Auslesen der Daten für Hardware
$result = mysql_query("SELECT * FROM hardware",$db);
?>

<? while ($items = mysql_fetch_array($result)) { ?>

<? "echo Frage:"; ?><? echo $items[frage_hardware]; ?><br>
<? "echo Antwort:"; ?><? echo $items[antwort_hardware]; ?><br>
<? } ?>

eingabe_hardware.php

<html>
<style>
a:link {color:#000000; text-decoration:none; font-family:Verdana, Geneva, Arial,; font-size:8pt;}
a:active {color:#000000; text-decoration:none; font-family:Verdana, Geneva, Arial,; font-size:8pt;}
a:visited {color:#000000; text-decoration:none; font-family:Verdana, Geneva, Arial,; font-size:8pt;}
a:hover {color:#ff0000; text-decoration:none; font-family:Verdana, Geneva, Arial,; font-size:8pt;}
td {font-family : verdana,helvetica; color : black; font-size : 10px;}
</style>
<body bgcolor="#336699">
<form method="post" action="<? echo $PHP_SELF ?>">
<table width="400" border="0" cellspacing="1" cellpadding="3" bgcolor="#000000" align="center">
  <tr bgcolor="#e2e2e2">
      <td><b>Stellen Sie Ihre Frage zum Thema Hardware, wir beantworten sie.</b><br><br>

<?
include ("config.php");
if ($submit) {
$sql = "INSERT INTO hardware (frage_hardware) VALUES ('$frage_hardware')";
$result = mysql_query($sql,$db);
echo "<div align="center">";
echo "<table border="0" cellspacing="1" cellpadding="3" bgcolor="#000000">";
echo "<tr>";
echo "<td bgcolor="#e2e2e2" align="center">";
echo "Ihre Daten wurden eingetragen! Vielen Dank!<br><br>";
echo "<a href="index.php">Zur &Uuml;bersicht</a><br><br>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</div>";
}
else {
?>

Frage:<br>
          <textarea name="frage_hardware" cols="40" rows="5"></textarea><br>

<input type="submit" name="submit" value="Eintragen">
</td>
</tr>
</table>
</form>
<?
}
?>
</body>
</html>

Folgende Problemstellung:
Wenn die index.php aufgerufen wird, werden alle Einträge der Tabelle hardware über auslesen_hardware.php aus der db ausgelesen und angezeigt. Die datei auslesen_hardware.php wird in der index.php inkludiert. Die Tabelle hardware besteht aus id_hardware, frage_hardware und antwort_hardware.
In der auslesen_hardware.php ist wie oben zu sehen folgendes script eingebaut:
<?
//Verbindung herstellen
include ("config.php");

//Auslesen der Daten für Hardware
$result = mysql_query("SELECT * FROM hardware",$db);
?>

<? while ($items = mysql_fetch_array($result)) { ?>

<? echo $items[id_hardware]; ?> 
<a href="#" onclick="window.open('antwort_hardware.php','','width=500,height=200')"><? echo $items[frage_hardware]; ?></a><br>

<? } ?>

Ich möchte nun, das mir die jeweiligen Datensätze, die in der index.php als Fragen angezeigt werden (das ganze soll eine faq werden), mittels Link ein Popup Fenster öffnen, wo zu der jeweiligen Frage auch die richtige Antwort steht. Müßte eigentlich mit der ID der Tabelle gehen, da diese für Fragen und Antworten gleich ist.
Hier noch die sql Tabelle:

CREATE TABLE hardware (
  id_hardware int(11) NOT NULL auto_increment,
  frage_hardware varchar(250) default NULL,
  antwort_hardware varchar(250) default NULL,
  PRIMARY KEY  (id_hardware)
) TYPE=MyISAM;

Ich habe heute schon jede Menge an diesen Scripts herumgeworkt, bin aber bis jetzt auf keine Lösung gekommen. Vielleicht kann mir jemand bei der Lösung des Problems helfen.

Danke

lg
Andi