Vraag & Antwoord

Webprogrammeren & scripting

PHP: Expecting ']'

9 antwoorden
  • Hoi! Ik ben bezig met een forum te helpen opzetten, maar ineens heeft ie uit het niets een foutmelding. HEt begon met [code:1:96a53b0d0f]/* -- whoschatting_show --*/ function whoschatting_show($total="",$names="") { $IPBHTML = ""; $IPBHTML .= "<div id='active_chat' class='stats_list'> <<<---HIER ZIT DE FOUTMELDING, unexpected T_CONSTANT_ENCAPSED_STRING o.i.d <h2> {$total} {$this->lang->words['whoschatting_total']} {$this->lang->words['whoschatting_loadchat']} </h2> " . ((count($names)) ? (" <ul> <li>" . implode( ",</li><li>", $names ) . "</li> </ul> ") : ("")) . " </div>"; return $IPBHTML; } [/code:1:96a53b0d0f] Dus, ik verander dat naar [code:1:96a53b0d0f] /* -- whoschatting_show --*/ function whoschatting_show($total="",$names="") { $IPBHTML = ""; $IPBHTML .= ""; return $IPBHTML; }[/code:1:96a53b0d0f] Waarop hij precies dezelfde foutmelding in een gelijkwaardig stukje bóven dit stukje code geeft! Terwijl, als ik me het goed herinner, de php parser toch van boven naar beneden werkt? Dus... waarom werkt het niet? Dit is allemaal auto-gegenereerde code, en heeft nog nooit een probleem gehad, tot nu toe! Help! Bij voorbaat zeer veel dank, en ik vertrouw maar weer op jullie kundige hulp, Sanchises
  • Je bent een ; vergeten.
  • Waar dan? Ik heb in principe slechts 3 statements met alle drie een ; erachter? (resp. $IPBHTML = "";, IPBHTML.= "..."; en return $IPBHTML;)
  • [img:a9bbbc2477]http://rumaro.nl/webpicupload/img/screenshot.19.jpg[/img:a9bbbc2477] Op het einde. Ik zie nu ook dat je een "mist. :wink:
  • Je kan variabelen over meerdere regels uitspreiden toch?
  • Sorry, dat had ik even niet gezien. En kan dit dan wel ?: [code:1:7fff2004f4] " . ((count($names)) ? (" [/code:1:7fff2004f4] dit zit BUITEN de 2 "" Ik denk dat je enkele " moet escapen: \"
  • Well... yeah? In principe komt dat gewoon neer op een statement als $var = "blabla" . (functie($arg)) ? ("blabla"), en dat is gewoon een kloppende regel. Anyway, ik heb nu het hele stuk code in principe niet meer nodig, dus bespaar u de moeite (gezien het probleem dus duidelijk niet één-twee-drie te identificeren is). Ik ben nog steeds nieuwsgierig, though.
  • Nee hoor, is niet waar wat je zegt! (denk ik) :lol: $var = "blabla" . (functie($arg)) ? ("blabla"), blabla had dan 'blabla' moeten zijn, of \"blabla\" maar niet zoals jij het aanhaalt. Je gebruikt namelijk de " als in/uit teken en dan moet er dus een . volgen.
  • Ik heb ook het idee dat het klopt. Sterker nog, een kort voorbeeld met gebruik van de functie: [code:1:572096ee37]<?php echo whoschatting_show(3, array('sanchises', 'rumaro', 'marientje')); $lang->words['whoschatting_total'] = 'whoschatting_total'; $lang->words['whoschatting_loadchat'] = 'whoschatting_loadchat'; /* -- whoschatting_show --*/ function whoschatting_show($total="",$names="") { global $lang; $IPBHTML = ""; $IPBHTML .= "<div id='active_chat' class='stats_list'> <h2> {$total} {$lang->words['whoschatting_total']} {$lang->words['whoschatting_loadchat']} </h2> " . ((count($names)) ? (" <ul> <li>" . implode( ",</li><li>", $names ) . "</li> </ul> ") : ("")) . " </div>"; return $IPBHTML; } ?>[/code:1:572096ee37]geeft bij mij geen foutmelding. Misschien een server-instelling die de boel toch nog om zeep helpt? Of, omdat PHP soms wat rare foutmeldingen geeft en je aangeeft dat bij simplificatie dezelfde fout eerder optreedt, wellicht zit er elders een fout.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.