Parse error unexpected '<'

reptile

Registered User
Hallo,
ich bekomme bei folgendem Code einen Parse error: unexpected '<'

Code:
<?php
include ("functions.inc.php");

mysqlconnect();

if(isset($_GET['id']))
    {
        $queryid = $_GET["id"];
    }

    $query	=	"SELECT * FROM jugendgruppe WHERE (jugendgruppe.id = ' . &queryid . ');
    
    $result	=	mysql_query( $query );
    
    if ( ! $result )
    {
	    die('Konnte die Datens&auml;tze nicht auslesen');
    }
    
    $datensatz	=	mysql_fetch_array( $result );
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns='http://www.w3.org/1999/xhtml'>

In der letzte Zeile das < soll nicht passen, weiß jemand Rat?
 
Da fehlt was:

Code:
$query	=	"SELECT * FROM jugendgruppe WHERE (jugendgruppe.id = ' . &queryid . ')[COLOR="Red"]"[/COLOR];
 
Dankeschön, das war der Fehler.

Hab ihn jetzt aber schon wieder. Nach ändern des Codes ging es. Dann hab ich das fetch_array richtig geschrieben und bekomm die Fehlermeldung wieder.

Der Code:

Code:
<?php
include ("functions.inc.php");

mysqlconnect();

if(isset($_GET['id']))
    {
        $queryid = $_GET["id"];
    }

    $query	=	"SELECT * FROM jugendgruppe WHERE (jugendgruppe.id = ' . &queryid . ')";
    
    $result	=	mysql_query( $query );
    
    if ( ! $result )
    {
	    die('Konnte die Datens&auml;tze nicht auslesen');
    }
					
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<meta http-equiv="pragma" content="cache">
<meta name="robots" content="INDEX,FOLLOW">
<meta http-equiv="content-Language" content="de">
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="author" content="">
<meta name="publisher" content="">
<meta name="copyright" content="">
<meta name="audience" content="Alle">
<meta name="page-type" content="Homepage">
<meta name="page-topic" content="Privat">
<meta http-equiv="reply-to" content="">
<meta name="date" content="2008-02-07">
<meta name="expires" content="">
<meta name="revisit-after" content="3 days">
<link href="default.css" rel="stylesheet" type="text/css">
</head>
<body>
    
		<?php
		    // Schleife zum Ausgeben der einzelnen Datensätze in Tabellen-Reihen
		    for ( $i=1; $i <= $anzahl; $i++)
		    {
			$datensatz	=	mysql_fetch_array( $result );
					
		?>

<table> 
    <tr>
        <td colspan="3" class="titelzeile"><?php echo $datensatz["vorname"]; ?> <?php echo $datensatz["name"]; ?></td>
    </tr>
    <tr>
        <td class="titelzeile">Beruf:</td>
        <td class="inhaltszeile"><?php echo $datensatz["beruf"]; ?></td>
        <td rowspan="3" class="inhaltszeile"><img src="images/<?php echo $datensatz["vorname"]; ?><?php echo $datensatz["name"]; ?>.jpg"/></td>
    </tr>
    <tr>
        <td class="titelzeile">Alter:</td>
        <td class="inhaltszeile"><?php echo $datensatz["geburtsdatum"]; ?></td>  
    </tr>   
    <tr>
        <td class="titelzeile">In der Organisation seit:</td>
        <td class="inhaltszeile"><?php echo $datensatz["eintritt"]; ?></td>  
    </tr>
    <tr>
        <td class="titelzeile" colspan="3">Zur&uuml;ck zur &Uuml;bersicht</td>
    </tr>
</table>  

</body>
</html>

Parse error: syntax error, unexpected $end in /www/htdocs/w0094f13/jugendgruppe_details.php on line 76

Wobei Zeile 76 entspricht:

 
Dann mach einfach mal die Schleife zu...

und einen Tippfehler gibt es auch noch da drinnen. Und du solltest dir besser angwöhnen vom User übernommene Eingaben gleich zu überprüfen, schreib besser
PHP:
$queryid = intval($_GET["id"]);
das wäre mal ein Anfang (wenn es ein Int ist).
Paul
 
Danke stimmt jetzt bekomm ich keine Fehlermeldung mehr. Hab das ganze jetzt so:

Code:
<?php
include ("functions.inc.php");

mysqlconnect();

if(isset($_GET['id']))
    {
        $queryid = intval($_GET["id"]);
    }

    $query	=	"SELECT * FROM jugendgruppe WHERE (jugendgruppe.id = ' . &queryid . ')";
    
    $result	=	mysql_query( $query );
    
    if ( ! $result )
    {
	    die('Konnte die Datens&auml;tze nicht auslesen');
    }
					
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<meta http-equiv="pragma" content="cache">
<meta name="robots" content="INDEX,FOLLOW">
<meta http-equiv="content-Language" content="de">
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="author" content="">
<meta name="publisher" content="">
<meta name="copyright" content="">
<meta name="audience" content="Alle">
<meta name="page-type" content="Homepage">
<meta name="page-topic" content="Privat">
<meta http-equiv="reply-to" content="">
<meta name="date" content="2008-02-07">
<meta name="expires" content="">
<meta name="revisit-after" content="3 days">
<link href="default.css" rel="stylesheet" type="text/css">
</head>
<body>
    
		<?php
		    // Schleife zum Ausgeben der einzelnen Datensätze in Tabellen-Reihen
		    for ( $i=1; $i <= $anzahl; $i++)
		    {
			$datensatz	=	mysql_fetch_array( $result );
                    	
		?>

<table> 
    <tr>
        <td colspan="3" class="titelzeile"><?php echo $datensatz["vorname"]; ?> <?php echo $datensatz["name"]; ?></td>
    </tr>
    <tr>
        <td class="titelzeile">Beruf:</td>
        <td class="inhaltszeile"><?php echo $datensatz["beruf"]; ?></td>
        <td rowspan="3" class="inhaltszeile"><img src="images/<?php echo $datensatz["vorname"]; ?><?php echo $datensatz["name"]; ?>.jpg"/></td>
    </tr>
    <tr>
        <td class="titelzeile">Alter:</td>
        <td class="inhaltszeile"><?php echo $datensatz["geburtsdatum"]; ?></td>  
    </tr>   
    <tr>
        <td class="titelzeile">In der Organisation seit:</td>
        <td class="inhaltszeile"><?php echo $datensatz["eintritt"]; ?></td>  
    </tr>
    <tr>
        <td class="titelzeile" colspan="3">Zur&uuml;ck zur &Uuml;bersicht</td>
    </tr>
</table>  
<?php } ?>
</body>
</html>

Jetzt zeigt er mir aber gar nichts an. Wenn ich die Schleife vor der Tabelle schließe hat er keine Daten.
 
Hallo,
stimmt, da ich ein PHP - Noob bin hab ich aus einem anderen Script die Schleife kopiert.

Hab das ganze jetzt so:

Code:
<?php
		    while($datensatz=mysql_fetch_array( $result, MYSQL_ASSOC )) {
                    
		?>

<table> 
    <tr>
        <td colspan="3" class="titelzeile"><?php echo $datensatz["vorname"]; ?> <?php echo $datensatz["name"]; ?></td>
    </tr>
    <tr>
        <td class="titelzeile">Beruf:</td>
        <td class="inhaltszeile"><?php echo $datensatz["beruf"]; ?></td>
        <td rowspan="3" class="inhaltszeile"><img src="images/<?php echo $datensatz["vorname"]; ?><?php echo $datensatz["name"]; ?>.jpg"/></td>
    </tr>
    <tr>
        <td class="titelzeile">Alter:</td>
        <td class="inhaltszeile"><?php echo $datensatz["geburtsdatum"]; ?></td>  
    </tr>   
    <tr>
        <td class="titelzeile">In der Organisation seit:</td>
        <td class="inhaltszeile"><?php echo $datensatz["eintritt"]; ?></td>  
    </tr>
    <tr>
        <td class="titelzeile" colspan="3">Zur&uuml;ck zur &Uuml;bersicht</td>
    </tr>
</table>  
<?php } ?>

Funzt aber auch nicht!
 
Ja was funzt denn nicht? Keine Ausgabe??

Lass Dir dochmal den Mysql-Error bzw. Error-Code ausgeben!

PHP:
echo mysql_error();
echo mysql_errno();

Wenn keine Ausgabe kommt (und kein anderer Fehler) dann scheint
dein Select nicht gegriffen zu haben!

Gruß
Haggy
 
Ich habs jetzt so eingefügt:

Code:
<?php
include ("functions.inc.php");

mysqlconnect();

if(isset($_GET['id']))
    {
        $queryid = intval($_GET["id"]);
    }

    $query	=	"SELECT * FROM jugendgruppe WHERE (jugendgruppe.id = ' . &queryid . ')";
    
    $result	=	mysql_query( $query );
    
    if ( ! $result )
    {
	    die('Konnte die Datens&auml;tze nicht auslesen');
    }
    
    echo mysql_error();
echo mysql_errno();
die;
					
?>

Und bekomm 0 als Ausgabe! Was heisst das jetzt?
 
Laß Dir mal $query ausgeben. Denn dort hast Du einen wesentlichen Fehler drin.

Um die Spannung rauszunehmen:
Code:
$query = "SELECT * FROM jugendgruppe WHERE jugendgruppe.id=$queryid";

huschi.
 
a) Du hast oben ein &queryid und nicht $queryid geschrieben.
b) Du brauchst in doppelten Anführungszeichen (") keinen Punkt zu setzten. Variablen werden hier automatisch ersetzt.
c) Wenn Du einen String mit " anfängst muß er auch mit " aufhören. Du hast oben mit " angefangen und wolltest mit ' unterbrechen.

huschi.
 
Back
Top