<?php $points=array(); $contacts=file("contacts.txt"); $i=0; // haetaan käyttäjille lähetyspisteet while($i<count($contacts)) { $rivi=explode("|", $contacts[$i]); $found=0; // onko kenties hakemamme jo merkattu for($xi=0; $xi<count($points); $xi++) { // rivistä hakkelusta $point=explode("|", $points[$xi]); // onko tämä kenties etsimämme, jos on, lisätään pistetä ja asetetaan found ykköseksi if(strtolower($point[1])==strtolower($rivi[0])) { $point[0] = $point[0] + $rivi[2]; $points[$xi]=$point[0] . "|" . $point[1]; $found=1; } } if($found==0) { // jos ei löytyny, luodaan uusi $points[]=$rivi[2] . "|" . $rivi[0]; } $i++; } for($i=0; $i<count($points); $i++) { echo $points[$i]; } ?>
Kun yritän ajaa sitä, tulee error:
Parse error: parse error, unexpected T_FOR in /usr/home/topi/public_html/kaavio.php on line 16
Mikä vika?
$i++; }
Jos nyt oikein näen niin tuo kaarisulku pois.
Itsellänikin oli tuossa pari päivää sitten täsmälleen samanlainen ongelma. En tosin muista, mutta jotenkin se taisi liittyä noihin puolipisteisiin(;) ja (kaari)sulkuihin[()].
Koita ottaa tuo kaarisulku pois tai jotain semmoista... kyllä se pienellä säätämisellä onnituu...
Juusofin kirjoitti:
Sehän aloittaa tietenkin tuon for-osan. Mutta, itse en nää tässä mitään virhettä, ja kun kapsin palvelimella koodia kokeilin, niin ei ainakaan mistään valittanut.
Juusofin kirjoitti:
Koita ottaa tuo kaari sulku pois tai jotain semmoista... kyllä se pienellä säätämisellä onnituu...
Tuo sulku on ihan normaalia for-looppia varten.
for( jotain) { tee_jotain(); } else { tee_jotain_muuta(); kiva_funktio(); }
Mullakin tuo toimii ihan niinku pitääki (Apache/2.0.52 (Win32) PHP/4.3.9) :o
Päivitin PHP:n vitoseksi, error on nyt pelkkä
Parse error: parse error in /usr/home/topi/public_html/kaavio.php on line 16
Minullakin skripti toimii virheittä. Oletko varma, että koodi on juuri sama kuin tuossa? Mitä tiedosto contacts.txt sisältää (sen ei kyllä pitäisi vaikuttaa)?
Yleensä tällainen virhe selviää viimeistään kommentoimalla koodia, kunnes ongelmakohta tulee selville.
Aihe on jo aika vanha, joten et voi enää vastata siihen.