brauche DRINGEND Hilfe | PHP Problem

Alles, was PHP betrifft, kann hier besprochen werden.

brauche DRINGEND Hilfe | PHP Problem

Postby k@0s » 27. February 2005 13:25

Hi Leute, ich habe ein kleines problem mit php. ich habe ein online game, aber wenn ich im admin menü in die allgemeinen einstellungen möchte, dann bekomme ich folgende Fehlermeldung:

Parse error: syntax error, unexpected ';' in E:\I-Net\xampp\htdocs\spiel4\admin1985\admin2.php on line 28

die datei sieht so aus:



Code: Select all
<?
include("header.inc.php");

$result = mysql_query("SELECT url, email, bilder FROM `demoadmin`");
$myrow = mysql_fetch_row($result);
$url = $myrow[0];
$email = $myrow[1];
$bildinfo = $myrow[2];

?>

<body bgcolor="#FFFFFF" text="#000000"  link="#000000" vlink="#000000" alink="#000000"><br>
<p align="center"><font size="4" color="red" face="Verdana, Arial, Helvetica, sans-serif"><b><U>Übersicht Einstellungen</u></b></font></p>
<br>
<form method="post" action="admin.php">
<center><TABLE bgcolor="#FFFFFF" bordercolor="#000008" border="1" width="95%">

<TR>
  <TD width="80%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Deine E-Mail Adresse:</TD>
  <TD><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><input type="text" name="emailneu" value="<? echo "$email"; ?>"></TD>
</TR>
<TR>
  <TD width="80%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Bilder/Downloads
    aktiv</font></TD>
  <TD><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><?
  if ($bildinfo == 1)
  {
  echo ?> <input type="checkbox" value="bilder" name="bilder" checked="checked" /> <? ;
  }
  if ($bildinfo == 0)
  {
  echo ?> <input type="checkbox" value="bilder" name="bilder" /> <? ;
  }   
  ?>
 
 
 
 
 
  </TD>
</TR>

 <br><br><br>
  <a href="./ohne_login.php" target="main"><font size="2" color="#000000"><b>Alle User die sich noch nie eingeloggt haben l&ouml;schen!</a>
  <br><br>


</TABLE>
<table>
<TR><TD width="50%"><input type="submit" value="Daten &auml;ndern"></TD></form>


k@0s
 
Posts: 6
Joined: 27. February 2005 13:08

Postby redbat1 » 27. February 2005 13:46

Also für mich sieht das wie Syntaktischer nonesense aus!

Code: Select all
  if ($bildinfo == 1)
  {
  echo ?> <input type="checkbox" value="bilder" name="bilder" checked="checked" /> <? ;
  }
  if ($bildinfo == 0)
  {
  echo ?> <input type="checkbox" value="bilder" name="bilder" /> <? ;
  }   


entweder du schreibst die Ausgaben (echo) so:
Code: Select all
  if ($bildinfo == 1)
  {
  echo '<input type="checkbox" value="bilder" name="bilder" checked="checked" />';
  }
  if ($bildinfo == 0)
  {
  echo '<input type="checkbox" value="bilder" name="bilder" />';
  }   

oder so
Code: Select all
  if ($bildinfo == 1)
  { ?>
    <input type="checkbox" value="bilder" name="bilder" checked="checked" />
?>
  }
  if ($bildinfo == 0)
  { ?>
    <input type="checkbox" value="bilder" name="bilder" />
<?  }   
User avatar
redbat1
 
Posts: 12
Joined: 09. December 2004 20:16

Postby k@0s » 27. February 2005 14:29

Danke für die schnelle antwort und für die Hilfe, ich werds gleich mal ausprobieren. :P
k@0s
 
Posts: 6
Joined: 27. February 2005 13:08

Postby k@0s » 27. February 2005 14:34

So ich habs ausprobiert und jetzt scheint der Fehler behoben zu sein (mit der 1. Lösung), aber jetzt kommt ein neuer Fehler :cry:, vieleicht kannst du mir dazu ja auch helfen.:)

Fehler: Parse error: syntax error, unexpected '<' in E:\I-Net\xampp\htdocs\spiel4\admin1985\admin2.php on line 38

Wenn ich das allerdings mit dem 2. Lösungsvorschlag mache, dann scheint der Fehler woanders zu liegen: Parse error: syntax error, unexpected '<' in E:\I-Net\xampp\htdocs\spiel4\admin1985\admin2.php on line 39

Code: Select all
<?
include("header.inc.php");

$result = mysql_query("SELECT url, email, bilder FROM `demoadmin`");
$myrow = mysql_fetch_row($result);
$url = $myrow[0];
$email = $myrow[1];
$bildinfo = $myrow[2];

?>

<body bgcolor="#FFFFFF" text="#000000"  link="#000000" vlink="#000000" alink="#000000"><br>
<p align="center"><font size="4" color="red" face="Verdana, Arial, Helvetica, sans-serif"><b><U>Übersicht Einstellungen</u></b></font></p>
<br>
<form method="post" action="admin.php">
<center><TABLE bgcolor="#FFFFFF" bordercolor="#000008" border="1" width="95%">

<TR>
  <TD width="80%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Deine E-Mail Adresse:</TD>
  <TD><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><input type="text" name="emailneu" value="<? echo "$email"; ?>"></TD>
</TR>
<TR>
  <TD width="80%"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Bilder/Downloads
    aktiv</font></TD>
  <TD><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><?
  if ($bildinfo == 1)
  {
  echo '<input type="checkbox" value="bilder" name="bilder" checked="checked" />';
  }
  if ($bildinfo == 0)
  {
  echo '<input type="checkbox" value="bilder" name="bilder" />';
  }
 
 
 
 
  </TD>
</TR>

 <br><br><br>
  <a href="./ohne_login.php" target="main"><font size="2" color="#000000"><b>Alle User die sich noch nie eingeloggt haben l&ouml;schen!</a>
  <br><br>


</TABLE>
<table>
<TR><TD width="50%"><input type="submit" value="Daten &auml;ndern"></TD></form>


k@0s
 
Posts: 6
Joined: 27. February 2005 13:08

Postby redbat1 » 27. February 2005 14:42

Schau dir deinen Quellcode bitte immer sehr genau an wenn es auf Syntaxfehler hinausläuft hast du immer etwas im code das so nicht erlaubt ist! In diesem Fall ist es das du ein "<?" öffnest aber es nicht schließt (mit "?>")
So dürfte es klappen! Egal mit welcher Syntaxvariante

Code: Select all
  <TD><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><?
  if ($bildinfo == 1)
  {
  echo '<input type="checkbox" value="bilder" name="bilder" checked="checked" />';
  }
  if ($bildinfo == 0)
  {
  echo '<input type="checkbox" value="bilder" name="bilder" />';
  }
?>
User avatar
redbat1
 
Posts: 12
Joined: 09. December 2004 20:16

Postby k@0s » 27. February 2005 14:45

ok, danke, auch das Probiere ich gleich mal aus. Ich habs noch nicht so mit php, bin da noch ganz frisch. Aber beim nävhsten mal werd ich gucken ob alles geschlossen ist. thx nochmal für die schnelle hilfe.

EDIT: Jo jetzt geht es, Vielen dank nochmal. :D
k@0s
 
Posts: 6
Joined: 27. February 2005 13:08

Postby k@0s » 27. February 2005 14:55

hi,

ich bins nochma, sry falls ich nerve, aber ich hab da schon wieder nen fehler, diesmal aber mit mysql:

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in E:\I-Net\xampp\htdocs\spiel4\member\allianz\allyeinst2.php on line 9


und hier ist die allyeinst2.php:

Code: Select all

</head><body bgcolor="Black" text="White" vlink="Blue">

 

<br><br><br>
<?
$result = mysql_query("SELECT allystatus, allianz, allytag FROM `demoaccounts` WHERE `id` = '$userid'");
$row = mysql_fetch_row($result);
$num0 = $row[0];   
$num1 = $row[1];   
$num2 = $row[2];




if (strlen($allyname=trim($allyname))==0)
die("Fehler: Allianzname fehlt.");
if (strlen($allytag=trim($allytag))==0)
die("Fehler: Allianztag fehlt.");
if (strlen($allyforum=trim($allyforum))==0)
die("Fehler: Allianzforum fehlt.");
if (strlen($allyircs=trim($allyircs))==0)
die("Fehler: Allianz-IRC-Server fehlt.");
if (strlen($allyircc=trim($allyircc))==0)
die("Fehler: Allianz-IRC-Channel fehlt.");


                             
   mysql_query("UPDATE demoallianz SET allysite = '$allysite' WHERE allyid = '$id'");
   mysql_query("UPDATE demoallianz SET allyforum = '$allyforum' WHERE allyid = '$id'");
   mysql_query("UPDATE demoallianz SET allyircs = '$allyircs' WHERE allyid = '$id'");
   mysql_query("UPDATE demoallianz SET allyircc = '$allyircc' WHERE allyid = '$id'");
   mysql_query("UPDATE demoallianz SET allyanzbesch = '$besch' WHERE allyid = '$id'");
   
   echo "Allianzeinstellungen ge&auml;ndert.";


?>



ps. hätte nie gedacht, dass ein browsergame soviel schwierigkeiten mitsich bringen kann. :roll:
k@0s
 
Posts: 6
Joined: 27. February 2005 13:08

Postby redbat1 » 27. February 2005 15:00

Also das weiß ich nicht so genau! Ich kann mir aber gut Vorstellen, das deine Abfrage kein Ergebnis hat oder einfach falsch ist für die DB Struktur die du hast. IN diesem fall ist das Ergebnis der Abfrage ein "false" und damit nicht der richtige Datentyp für das "mysql_fetch_row". Also tip von mir! Test das SQL Statement mal in nem SQL Editor ob das überhaupt was rauskommt!
User avatar
redbat1
 
Posts: 12
Joined: 09. December 2004 20:16

Postby k@0s » 27. February 2005 15:01

danke für den tipp, aber wie testet man denn sowas? ich habe sowas noch nie gemacht. . :oops:
k@0s
 
Posts: 6
Joined: 27. February 2005 13:08

Postby marc75 » 28. February 2005 11:58

wie wäre es denn, mal mysql_error() zu verwenden.

Und wenn man von php oder mysql keine Ahnung hat, sollte man eventuell mal mit kleineren Dingen anfangen.
mfg
marc75
marc75
 
Posts: 19
Joined: 05. July 2004 14:30

Postby Jan H. Krüger » 28. February 2005 12:32

aber wie testet man denn sowas?


Wie redbat es schon sagte, in einem entsprechendem Programm oder einer sonstigen Umgebung in der man Abfragen eingeben kann und sich anschliessen das Ergebnis betrachten kann,
Um nur zu sehen ob eine Abfrage überhaupt etwas liefert langt PHPMyAdmin oder auch MySQLCC aus.
Jan H. Krüger
 
Posts: 152
Joined: 24. October 2004 19:42

SQL Query einfach mal in PHPmyAdmin eingeben

Postby TConnect » 28. February 2005 13:40

Hi,
meistens ist es hilfreich, die SQL-Query einfach mal ausgeben zu lassen und dann via CTRL+C / CTRL+V im Abfrageeditor bei phpMyAdmin zu posten. Der sagt einem dann schon recht genau, wo es nicht klappt.

Gruß TConnect
TConnect
 
Posts: 100
Joined: 31. March 2004 22:26


Return to PHP

Who is online

Users browsing this forum: No registered users and 16 guests