Toon posts:

PHP - Vage foutmelding....

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

Verwijderd

Topicstarter
Ik ben bezig met een upload scriptje, maar krijg een hele vage foutmelding:

Parse error: parse error, unexpected T_STRING in E:\websites\hetglrwaseeneitje\home\schoolproject\upload.php on line 11


Dit is mijn script:

$filename = "E:\websites\bestand\versie $versie\" . $bestand_name;

if (copy($bestand, $filename))
{
echo("Het bestand is succesvol opgeslagen.");
}
else
{
echo("Het bestand is niet opgeslagen.");
}

De eerste echo staat op regel 11...

Als ik deze regel weghaal, blijft ie gewoon verder gaan met dezelfde foutmelding;
totdat ik dit overhou:

$filename = "E:\websites\bestand\versie $versie\" . $bestand_name;
copy($bestand, $filename)

en dan krijg ik deze foutmelding:

Parse error: parse error, unexpected $ in E:\websites\hetglrwaseeneitje\home\schoolproject\upload.php on line 11

Ik heb de nieuwe php 4.2 geinstalleerd, maar al mijn andere site doen het gewoon?

Weet een van jullie wat ik hier fout doe? :?

Dankje..

  • flat
  • Registratie: Mei 2000
  • Niet online
Op maandag 06 mei 2002 11:32 schreef florisjan_fleppesteijn het volgende:
$filename = "E:\websites\bestand\versie $versie\" . $bestand_name;
ik gok zo dat 't daar misgaat, omdat je die " als het ware escaped... (toch?)

zet je code de volgende keer trouwens tussen
[php ] en [ /php] tags, dat leest wat fijner

"Happiness is a way of travel, not a destination."
--Roy Goodman


Verwijderd

Topicstarter
Nou dat moet gewoon werken, en als ik het weghaal blijf ik nog steeds die foutmelding krijgen...

Hij heeft het over regel 11, maar daar is mijn code al afgelopen; </html> staat op 10...

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

"E:\websites\bestand\versie $versie\"
moet at least

"E:\\websites\\bestand\\versie $versie"

zijn...

probeer in dit
code:
1
$filename = "E:\websites\bestand\versie $versie\" . $bestand_name;

eens in
code:
1
$filename = "/$bestand_name";

te veranderen, wat doettie dan?


* drm gaat nog eens ophouden met debug-cursussen geven

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

code:
1
$filename = "E:\websites\bestand\versie $versie\\" . $bestand_name;

dit werkt hier goed.

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

doe een ' ipv "
want je escaped nu steeds het karakter erna. Of doe een \\ ipv \

Klaar voor een nieuwe uitdaging.


Verwijderd

Op maandag 06 mei 2002 11:47 schreef chem het volgende:
doe een ' ipv "
want je escaped nu steeds het karakter erna. Of doe een \\ ipv \
met ' wordt $versie toch niet geparsed? :?

Verwijderd

Echo proberen zonder die ( )....:)
Zijn sowieso overbodig, weet niet zeker of het de foutmelding veroorzaakt, heb hier op mijn laptop geen php draaien.
of te wel gewoon :
<?
echo 'Het bestand is opgeslagen';
}
else
{
echo 'Het bestand is niet opgeslagen';
}
?>

Verwijderd

Volgens mij is het een php 4.2.0 probleem. Want heb het hier ook :(

  • GiLuX
  • Registratie: Juni 1999
  • Laatst online: 12-11-2025
dit werkt gewoon met php4.3.0 dev op win32 en php4.0.6 oplinux:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
error_reporting(E_ALL);
$bestand_name="dbusercopy";
$bestand="d:\apache\htdocs\dbuser";
$filename = "d:/apache/htdocs/" . $bestand_name;

if (copy($bestand, $filename)) 
{

echo("Het bestand is succesvol opgeslagen.");
}
else
{
echo("Het bestand is niet opgeslagen.");
}
?>

mischien heb je iets raars in een van je variabelen zitten, een $ teken ofzo?

"I disagree with what you are saying, but I will defend to the death your right to say it." -- not clear who


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op dinsdag 14 mei 2002 01:14 schreef Rats het volgende:
Volgens mij is het een php 4.2.0 probleem. Want heb het hier ook :(
Lijkt me erg sterk.

  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 08-09 17:10
Volgens mij is dat ook dikke onzin..

Tussen dubbelquotes worden $variabelen gewoon geparsed. Je kunt binnen de dubbelquotes tekens escapen, zoals een newline \n . Maar een \ kun je er niet zomaar neerzetten.. Als ik print "C:\winnt\bla\viedz" doe komt daar niet uit wat ik wil hebben.. Ik zou gewoon doodleuk "C:\\winnt\\bla\\viedz" moeten doen om die slashes erbij te krijgen. Binnen single quotes ' is dat anders, maar daarbinnen worden variabelen niet geparsed. Dan zou je zoiets moeten gebruiken:
$filename = 'E:\websites\bestand\versie ' . $versie . '\' . $bestand_name;
of dus toch binnen dubbelquotes:
$filename = "E:\\websties\\bestand\\versie $versie\\$bestand_name";

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

elviver:
of dus toch binnen dubbelquotes:
$filename = "E:\\websties\\bestand\\versie $versie\\$bestand_name";
Of forward slashes gebruiken ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • DRvDijk
  • Registratie: Juni 2001
  • Laatst online: 08-09 17:10
Ghe tsjah, dat kan ook idd.. Da's beter zelfs :) WAAR is die koffie (8>

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

debuggen op parse errors mag je lekker zelf doen

Doet iets met Cloud (MS/IBM)

Pagina: 1

Dit topic is gesloten.