php problem!!! help!!

OM Wiener

Enthusiast
Thread Starter
Mitglied seit
16.04.2004
Beiträge
597
Ort
Deep in the Woods
Also wir haben folgendes PRobelm
wir bekomme die Person_ID nicht übergeben.
Das ganze sieht imo so aus:
PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head><body bgcolor="black" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
	<body>
    <p><font color="white"><img src="images/scheissbild.jpg" width="1288" height="199"></font></p>
    <h1 align="center"> <p><font color="white"><a href="Start.php">Home</a></font><font color="white"> <font color="white"><a href="Movies.php">Movies</a></font><font color="white"> <font color="white"><a href="Actors.php">Actors</a></font> <font color="white"> <a href="Directors.php">Directors</a></font></p>
   </h1>
    <p>
	<?php

//echo "Film:".$_GET['Film_ID'];

	$server = "localhost";
	$user = "root";
	$pass = "";
	$dbase = "moviedb";			
	
	$conn = mysql_connect($server, $user, $pass)
				or die ("Error connecting to database");
	
	mysql_select_db($dbase, $conn);

	$firstChar = "a";
	$query = "	SELECT Title, Year, Genre, length, format, Awards,  Description FROM movie WHERE Film_ID =" .$_GET['Film_ID'];
	$rs = mysql_query($query);
 

	

	while ($userData = mysql_fetch_array($rs)) {

		//echo ("</td>\n\t<td>");
		//echo ("<h1><a href=\"movies.php?Film_ID=");
		//echo ($userData["Film_ID"]);
		//echo ("\">");
?>
<h2 align = "center">
<?
		echo ($userData["Title"]);
		echo ("</h1>");
		echo ("<p>");
?>
</h2>
<h4 align = "center"> 
<?
		echo ($userData["Year, "]);
		echo (" Genre: ".$userData["Genre"]);
		echo (",    Length: ".$userData["length"]." min,");
		echo ("    Format: ".$userData["format"]);
		echo (",    Awards: ".$userData["Awards"]);
		echo ("<p></p>");
		echo ("Description:")
?>
</h4>
<h5 align = "justify ">
<?		
		echo ($userData["Description"]);
		//echo ("</h5>");
		//echo ("\t</td>\n</tr>\n");
		

		
	}

?>

</table>
      </frameset>
      <noframes>
      <body>
    </p>
</body></noframes>

<?php

	// db config-data
	//echo "Film:".$_GET['Film_ID'];

//echo "Film:".$_GET['Film_ID'];
//echo "Person:".$_GET['Person_ID'];
	
	$server = "localhost";
	$user = "root";
	$pass = "";
	$dbase = "moviedb";			// where is this data from?
				
	// setting up a connection
	$conn = mysql_connect($server, $user, $pass)
				or die ("Error connecting to database");

	// selecting a database
	mysql_select_db($dbase, $conn);

	// querying
//	$query = "	SELECT DISTINCT First_name, Surname, Date_of_birth, Nationality, Role_ID, Name FROM movie, role, person WHERE Role_ID = 1 ";
	//$query = "	SELECT DISTINCT  person.First_name, person.Surname, person.Date_of_birth, person.Nationality, role.Name 
	//FROM role, person, relation_table WHERE role.Role_ID = 2 AND relation_table.Role_ID = role.Role_ID AND relation_table.Person_ID = person.Person_ID";
	
	$query ="SELECT DISTINCT movie.Title, person.Person_ID, relation_table.Person_ID, movie.Film_ID, relation_table.Film_ID,  role.Name, person.First_name, person.Surname, person.Date_of_birth, person.Nationality 
			FROM Person, relation_table, role, movie
			WHERE movie.Film_ID = ".$_GET['Film_ID']."
			AND relation_table.Person_ID = person.Person_ID
			AND movie.Film_ID = relation_table.Film_ID
			AND relation_table.Role_ID = role.Role_ID"; 
			
			
	
	//echo ($query);
	$rs = mysql_query($query);

?>

 </font>
     <font color="white">
    
		<table align="center" width='600' border='1' cellpadding='1' cellspacing='0'>	
		
			<tr>
				<td>First Name</td>
				<td>Surname</td>
				<td>Role</td>
				<td>Birth</td>
                <td>Nationality</td>
			</tr>

<?
	// printing to screen

	while ($userData = mysql_fetch_array($rs)) {

		echo ("<tr>\n\t<td>");
		echo ($userData["First_name"]);
		echo ("</td>\n\t<td>");
		echo ("<a href=\"Actor1.php?Person_ID=");
		echo ($userData["Person_ID"]);
		echo ("\">");
		echo ($userData["Surname"]);
		echo ("</a>");
		echo ("</td>\n\t<td>");
		echo ($userData["Name"]);		
		echo ("</td>\n\t<td>");
		echo ($userData["Date_of_birth"]);
        echo ("</td>\n\t<td>");
        echo ($userData["Nationality"]);
		echo ("\t</td>\n</tr>\n");
	}

?>


    <p>
      </frameset>
      <noframes>
      <body>
    </p>
    <p> </p>
    <p>     </p>
</body></noframes>
</html>

Mysql query funzt in phpmyadmin und gibt Person_ID und Film_ID zurück.
Nur nicht auf der Seite, dort wird nur die Person_ID geecho.
Was machen wir falsch?

plz help!!!

P.S.
Ich habe keine gespaltene Persönlichkeit.
Es sind mehrere Personen die daran arbeiten!


*edit*
Ich habe den falschen code gepostet.
Jetzt ist der komplette code gepostet.
sorry
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
welche ID meinst du überhaupt? weil es gibt ja mehrere in deinem script

EDIT: das scheint nicht das komplette script zu sein oder? weil es fehlen ja sachen wie $result = mysql_query($query);
 
Zuletzt bearbeitet:
Abgesehen davon ob deine SQL Richtig sind oder nicht, was ich hier auf die schnelle nicht testen kann, hab ich kein Problem damit deine GET Variable zu übergeben. Da du ja kein Formular per GET versendest, ist die einzige Möglichkeit eine GetVariable zu übergeben per link, bzw ber Seitenaufruf in der Browser Adressleiste. Dies scheint bei mir auch auf den ersten Blick zu funktionieren.

PHP:
echo "<a href='movies.php?Film_ID=".$_GET['Film_ID']."&Person_ID=".$_GET['Person_ID']."'>link</a>";

Auf Gut Deutsch, ich kann dein Problem hier auf die schnelle nicht nachvollziehen. Vielleicht versuchs einfach mal das du aus der unteren DB-Abfrage einfach eine $query2 und eine $rs2 draus machst (einfach die Variablen Namen umbennen...) Die zweite Datenbank Connection könntest du dir dann eigentlich auch sparen... Ein Verbindungsaufbau und einmal Datenbank wählen reicht in einem Script, zumindest solange es sich um die selbe DB handelt.
 
@OuB! K F!X: was meinst du?

btw dein html was du darin verwendest ist mal sowas von unvalid. Änder das erstmal richtig ab und dann sehen wir weiter. btw der erste mysql query ist schon falsch der muss
PHP:
$query = "    SELECT Title, Year, Genre, length, format, Awards,  Description FROM movie WHERE Film_ID = '" .$_GET['Film_ID']."';";
heißen
und guck dir am besten noch mal die variablen und string verkettung an. das ist teils gräuselig bei dir.

sprintf ist zb eine sehr gute variante um code übersichtlich zu bekommen. da die variablen anders eingefügt werden zb so:

sprintf("Hallo %s, Willkommen bei <a href=\"index.php\">%s</a>", $userdetails['username'], $sitedetails['pagename']);
d.h. soviel wie das erste %s entspricht den $userdetails['username'] und das zweite halt den $sitedetails['pagename']

das kann man auch beliebig weiterführen. also noch mehr %s als nur 2
 
Zuletzt bearbeitet:
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh