[PHP & MySQL] Normal wird die ID angezeigt im Link nicht?

LeAnn
Ja. ich weiß der Code ist wahrscheinlich sehr umständlich. Der Teil um den es geht den hab ich fett gemacht.
Also darum gehts: Für ein Bewertungssystem, habe ich auf einem 15x90 großen Bild mehrere Imagemaps (?) angelegt. Im Link sind die Information welche Punktzahl man vergibt und welche id der Film hat. Merkwürdiger Weise ist die ID immer 1. Wenn ich den selben Code (<? echo $fil[id];?>) vor oder hinter dem Bild verwende zeigt er die richtige ID an. Wisst irh was falsch ist?
Zitat:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<meta http-equiv="expires" content="0">
<title>Bewertungssystem</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>

<body>
<? include("includefilme.php");?>
<h3><? if($id == '') {?>Bewertungssystem<? } else{
$select = mysql_query("SELECT * FROM filme WHERE id = '$_GET[id]'");
$did = mysql_fetch_array($select);?>Bewertung von <em><? echo $did[titel];?></em><? }?></h3>
<? if($id == '') {?>Hier kannst du alle Filme bewerten. Klicke dazu einfach auf den Stern den der Film deiner Meinung nach verdient.<br />
<?
if($_GET[action] == 'send') {
$bew = mysql_query("SELECT bewertung, bewerter FROM filme WHERE id = '$_GET[id]'");
$vot = mysql_fetch_array($bew);
$zahl1 = "$vot[bewertung]";
$zahl2 = "$_GET[vote]";
$plus = $zahl1 + $zahl2;

$zahl = $vot[bewerter];
$zahl++;
$sternchen = $plus / $zahl;
if(($sternchen > '0') AND ($sternchen <= '1,4')){ $s = "1";}
elseif(($sternchen >= '1,5') AND ($sternchen <= '2,4')){ $s = "2";}
elseif(($sternchen >= '2,5') AND ($sternchen <= '3,4')){ $s = "3";}
elseif(($sternchen >= '3,5') AND ($sternchen <= '4,4')){ $s = "4";}
elseif(($sternchen >= '4,5') AND ($sternchen <= '5,4')){ $s = "5";}
elseif(($sternchen >= '5,5') AND ($sternchen <= '6')){ $s = "6";}
else { $s='0';}
$update = mysql_query("UPDATE filme Set bewertung = '$plus', bewerter = '$zahl' WHERE id = '$_GET[id]'");
if($update == true) {?>Danke f&uuml;r Ihre Bewertung<br /><a href="bewertung.php">Weiter</a><? }}
else {
$allg = mysql_query("SELECT * FROM filme");
while($fil = mysql_fetch_array($allg)){?><p><b><a href="bewertung.php?action=send&vote=1&id=<? echo $fil[id];?>"><? echo $fil[titel];?></a></b>, <em><? echo $fil[genere];?>, <? echo $fil[spielzeit];?> Minuten</em>&nbsp;&nbsp;&nbsp;<img src="grafiken/<? if(($fil[bewertung] == '0') AND ($fil[bewerter] == '0')) {?>0<? }
else {
$sternchen = $fil[bewertung] / $fil[bewerter];
if(($sternchen > '0') AND ($sternchen <= '1,4')){ $s = "1";}
elseif(($sternchen >= '1,5') AND ($sternchen <= '2,4')){ $s = "2";}
elseif(($sternchen >= '2,5') AND ($sternchen <= '3,4')){ $s = "3";}
elseif(($sternchen >= '3,5') AND ($sternchen <= '4,4')){ $s = "4";}
elseif(($sternchen >= '4,5') AND ($sternchen <= '5,4')){ $s = "5";}
elseif(($sternchen >= '5,5') AND ($sternchen <= '6')){ $s = "6";}
else { $s='0';}?><? echo $s;}?>_stars.png" width="90" height="15" border="0" usemap="#Map" />
<map name="Map">
<area shape="rect" coords="0,0,15,15" href="bewertung.php?action=send&vote=1&id=<? echo $fil[id];?>">
<area shape="rect" coords="16,0,30,15" href="bewertung.php?action=send&vote=2&id=<? echo $fil[id];?>">
<area shape="rect" coords="31,0,45,15" href="bewertung.php?action=send&vote=3&id=<? echo $fil[id];?>">
<area shape="rect" coords="46,0,60,15" href="bewertung.php?action=send&vote=4&id=<? echo $fil[id];?>">
<area shape="rect" coords="61,0,75,15" href="bewertung.php?action=send&vote=5&id=<? echo $fil[id];?>">
<area shape="rect" coords="76,0,90,15" href="bewertung.php?action=send&vote=6&id=<? echo $fil[id];?>">
</map>
</p><? }}}?>
</body>
</html>
cll
Warum sollte in der $fil[id] jedes Mal was anderes stehen, wenn die Variable immer die gleiche ist und dazwischen nciht geändert wird?!?
Oder SOLL das bei allen Links im Bild gleich sein?
LeAnn
Wie? tut mir leid ich versteh grad nicht was du meinst? in der $fil[id] steht jedes mal das gleiche bei den Bildern. oder soll stehen
cll
ok, dann schreibs mal so um:
else { $s='0';}?><? echo $s; }
echo "_stars.png width='90' height='15' border='0' usemap='#Map' />
<map name='Map'>
<area shape='rect' coords='0,0,15,15' href='bewertung.php?action=send&vote=1&id=$fil[id];'>...
</map></p>"; }}}?>

dadurch hast du nur noch ein echo, in dem du vorher und nachher nochmal die Variable ausgeben kannst, ohne dass sie sich dazwischen ändern kann. Mich würde mal interessieren was es dir dann anzeigt.
LeAnn
Sorry. Funktioniert nicht. Ist immer noch so.
cll
hast dus online, damit man sichs mal live anschaun kann?
LeAnn
ne. ist nur so privat mit xampp aber wenn du magst kann ich mal ein paar Screens machen, wo man unten die Adresszeile sieht.