Toon posts:

Criminals Parse Error

Pagina: 1
Acties:
  • 32 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik heb thuis een criminals game gehost,
als ik clandoneren.php openen wil krijg ik de error;

Parse error: syntax error, unexpected T_STRING in game\clandonate.php on line 31

Hoe kan ik zo'n error oplossen?
Heb al gezocht op google, maar kan t niet vinden

Stond dat ik in de php.ini short tags op off moest zetten, maar dat helpt ook niet.

  • AtleX
  • Registratie: Maart 2003
  • Niet online

AtleX

Tyrannosaurus Lex 🦖

Wat staat er op regel 31? Daar ergens in de buurt zit een error, en aan de foutmelding te zien moet die met een editor met Syntax Coloring snel zichtbaar zijn. Ook zou je even contact op kunnen nemen met de maker(s) van Criminals, die weten hier vast veel meer vanaf :)

Sole survivor of the Chicxulub asteroid impact.


Verwijderd

Topicstarter
30 tm 34;


if(round($to->started/3600-time()/3600) + 12 <= 0) {
print " <tr><td class="subTitle"><b>Clan Donatie</b></td></tr>\n";
if(isset($_POST['amount']) && preg_match("/^[0-9]+\$/",$_POST['amount']) && $_POST['amount'] > 0) {
$get_amount = preg_replace('#[^0-9]#', '', $_POST['amount']);
$amount = $get_amount;

Verwijderd

PHP:
1
2
3
4
5
if(round($to->started/3600-time()/3600) + 12 <= 0) {
print " <tr><td class="subTitle"><b>Clan Donatie</b></td></tr>\n";
if(isset($_POST['amount']) && preg_match("/^[0-9]+\$/",$_POST['amount']) && $_POST['amount'] > 0) {
$get_amount = preg_replace('#[^0-9]#', '', $_POST['amount']);
$amount = $get_amount;


Lijkt me zo wel al te zien. De fout zit hier:

PHP:
1
print " <tr><td class="subTitle"><b>Clan Donatie</b></td></tr>\n";


Maak daar eens van:
PHP:
1
print ' <tr><td class="subTitle"><b>Clan Donatie</b></td></tr>\n';


of
PHP:
1
print " <tr><td class=\"subTitle\"><b>Clan Donatie</b></td></tr>\n";

[ Voor 92% gewijzigd door Verwijderd op 12-03-2005 13:47 ]


Verwijderd

Topicstarter
Heb je 1e vervongen, nu krijg ik ;

Parse error: syntax error, unexpected $end in C:\apachefriends\xampp\htdocs\clandonate.php on line 79

Op 79 staat ;

<CENTER><SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript" src="http://www.dutchleader.com/php/banex/view.php?id=leonie"></script></CENTER>

Als ik het weghaal krijg ik t nog..

Verwijderd

Je mag in PHP géén " gebruiken in een print / echo. Je moet dan \" gebruiken :)

Anders denkt hij dat je het print of echo commando afsluit :+

Verwijderd

Topicstarter
? sorry ben php noob, wat moet ik nu veranderen dan?

  • Xandrios
  • Registratie: Februari 2001
  • Laatst online: 16-02 21:14
Mja, we zijn hier geen helpdesk, sorry.
Probeer de makers van het spel eens te contacten. Die kunnen je vast beter helpen.

Of koop een goed boek en leer PHP ;)

  • Xandrios
  • Registratie: Februari 2001
  • Laatst online: 16-02 21:14
Ik kreeg van Hezik nog een toevoeging voor dit topic:




De foutmelding die je nu krijgt, is omdat een routine niet is afgesloten. Vaak helpt het als je je code wat leesbaarder schrijft:
PHP:
1
2
3
4
5
6
  if(round($to->started/3600-time()/3600) + 12 <= 0)
    { print " <tr><td class="subTitle"><b>Clan Donatie</b></td></tr>\n";
      if (isset($_POST['amount']) && preg_match("/^[0-9]+\$/",$_POST['amount']) && $_POST['amount'] > 0)
        {$get_amount = preg_replace('#[^0-9]#', '', $_POST['amount']);
         $amount = $get_amount;
?>

Normaal is het bij PHP zo:
PHP:
1
2
3
4
if (voorwaarde)
  { opdracht;
    opdracht;
  }

Je ziet dat hetgeen uitgevoerd moet worden als aan de voorwaarde voldaan wordt, tussen accolades ( }) staat. Dit is bij de code die jij postte niet het geval.
Nu kan het zijn dat verderop die haken nog ergens staan, maar gezien jouw foutmelding ontbreken ze tenminste op één punt.
Voor de duidelijkheid, de code zou bv. zo kunnen moeten zijn:

PHP:
1
2
3
4
5
6
7
8
  if(round($to->started/3600-time()/3600) + 12 <= 0)
    { print " <tr><td class="subTitle"><b>Clan Donatie</b></td></tr>\n";
      if (isset($_POST['amount']) && preg_match("/^[0-9]+\$/",$_POST['amount']) && $_POST['amount'] > 0)
        {$get_amount = preg_replace('#[^0-9]#', '', $_POST['amount']);
         $amount = $get_amount;
        }
    }
?>


Nu is het in PHP mogelijk niet-php blokken op te nemen, dus het kan ook zoiets zijn:


PHP:
1
2
3
4
5
6
7
8
9
10
11
  if(round($to->started/3600-time()/3600) + 12 <= 0)
    { print " <tr><td class="subTitle"><b>Clan Donatie</b></td></tr>\n";
      if (isset($_POST['amount']) && preg_match("/^[0-9]+\$/",$_POST['amount']) && $_POST['amount'] > 0)
        {$get_amount = preg_replace('#[^0-9]#', '', $_POST['amount']);
         $amount = $get_amount;
?>
  <div class="blaat">hier wat HTML meuk en stuff</div>
<?php
        }
    }
?>

Grofweg gezegd moet je de code doorlopen om te kijken of er voor elke { wel een } is opgenomen.

[ Voor 4% gewijzigd door Xandrios op 12-03-2005 15:23 ]

Pagina: 1

Dit topic is gesloten.