Probleme "syntax error, unexpected $end"

Fermé
LeGenDz - 4 janv. 2009 à 17:30
 un débutant - 12 juil. 2010 à 04:11
Bonjour,

J'ai un soucis avec mon code, j'ai voulu faire un script PHP d'upload, il m'affiche l'erreur :

Parse error: syntax error, unexpected $end in C:\wamp\www\upload.php on line 59

Regardez mon code :

<head>
<html>
<body>
<title>Uploading...</title>
</head>

<h1>Uploading file...</h1>

<?php

if ($_FILES['userfile']['error'] > 0)
{
echo 'problem: ';
switch ($_FILES['userfile']['error'])
{
case 1: echo 'File exceeded upload_max_filesize'; break;
case 2: echo 'file exceed max_file_size'; break;
case 3: echo 'File only partially uploaded'; break;
case 4: echo 'No file Uploaded'; break;
}
exit;
}

// Le fichier possède-t-il le bon type MIME ?
if ($_FILES['userfile']['type'] != 'text/plain')
{
echo 'Problem: file is not plain text';
exit;
}

// Placer le fichier à l'emplacement désiré
$upfile = '/uploads/' .$_FILES['userfile']['name'] ;

if (is_uploaded_file($_FILES['userfile']['tmp_name']))
{
if (!move_uploaded_file($_FILE['userfile']['tmp_name'], $uofile))
{
echo 'problem: Could not move file to destination directory';
exit;
}
}
else
{
echo 'File uploaded Successfully<br /><br />';
// Reformater le contenue du fichier
$fp = fopen($upfile, 'r');
$contents = fread ($fp, filesize ($upfile));
fclose($fp);

$contents = strip_tages($contents);
$fp = fopen($upfile, 'w');
fwrite($fp, $contents);
fclose($fp);

// Afficher ce qui a été transférer avec une variable :
echo 'Aperçu du fichier télécharger :<br><hr>';
echo $contents;
echo '<br><hr>';
?>
</html></body>

___________________________________

Sachant que la ligne 59 est la derniere, pourriez vous m'aider
A voir également:

4 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
4 janv. 2009 à 18:12
Bonsoir,

deux remarques la balise <head> avant <html> et </body> aprsè </html> c'est pas correct

ensuite qd ça te sort une erreur $end dernière ligne c'est qu'il te manque une accolade }

<html>
<head>
<body>
<title>Uploading...</title>
</head>

<h1>Uploading file...</h1>

<?php

if ($_FILES['userfile']['error'] > 0)
{
echo 'problem: ';
switch ($_FILES['userfile']['error'])
{
case 1: echo 'File exceeded upload_max_filesize'; break;
case 2: echo 'file exceed max_file_size'; break;
case 3: echo 'File only partially uploaded'; break;
case 4: echo 'No file Uploaded'; break;
}
exit;
}

// Le fichier possède-t-il le bon type MIME ?
if ($_FILES['userfile']['type'] != 'text/plain')
{
echo 'Problem: file is not plain text';
exit;
}

// Placer le fichier à l'emplacement désiré
$upfile = '/uploads/' .$_FILES['userfile']['name'] ;

if (is_uploaded_file($_FILES['userfile']['tmp_name']))
{
if (!move_uploaded_file($_FILE['userfile']['tmp_name'], $uofile))
{
echo 'problem: Could not move file to destination directory';
exit;
}
}
else
{
echo 'File uploaded Successfully<br /><br />';
// Reformater le contenue du fichier
$fp = fopen($upfile, 'r');
$contents = fread ($fp, filesize ($upfile));
fclose($fp);

$contents = strip_tages($contents);
$fp = fopen($upfile, 'w');
fwrite($fp, $contents);
fclose($fp);

// Afficher ce qui a été transférer avec une variable :
echo 'Aperçu du fichier télécharger :<br><hr>';
echo $contents;
echo '<br><hr>';
} //il manquait celle la 
?>
</body>
</html>
0
Merci bien ça marche ;)

Dites, cet phrase veut dire quoi ? parceque j'ai toujours l'erreur :

// Le fichier possède-t-il le bon type MIME ?
if ($_FILES['userfile']['type'] != 'text/plain')
0
Double post, désoler, voici le message d'erreur :

Problem: file is not plain text

Pourriez-vous m'aider.

Bye
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
4 janv. 2009 à 20:22
Ce n'est pas un message d'erreur que tu as mais l'affichage d'un echo suite au test:

// Le fichier possède-t-il le bon type MIME ?
if ($_FILES['userfile']['type'] != 'text/plain')
{
echo 'Problem: file is not plain text';
exit;
}


donc ton fichier n'a pas le type text/plain, ou le navigateur ne renvoie pas cette info
0
LeGenDz > Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017
4 janv. 2009 à 20:23
Donc que puis-je faire ?

Bye
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894 > LeGenDz
4 janv. 2009 à 20:46
ne fais pas le test avec ['type']

mais en utilisant l'extension dans le ['name']

tu fais

 $array_fichier=explode(".",$_FILES['userfile']['name'];
$array_fichier[1]  contient l'extension  

.txt par exemple



0
LeGenDz > Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017
4 janv. 2009 à 20:50
Peux-tu me mettre le texte à mettre dans le code please, parceque je sais pas ou le mettre ... :(

Bye
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894 > LeGenDz
4 janv. 2009 à 21:46
Décidément il faut te mâcher le boulot:

<html>
<head>
<body>
<title>Uploading...</title>
</head>

<h1>Uploading file...</h1>

<?php

if ($_FILES['userfile']['error'] > 0)
{
echo 'problem: ';
switch ($_FILES['userfile']['error'])
{
case 1: echo 'File exceeded upload_max_filesize'; break;
case 2: echo 'file exceed max_file_size'; break;
case 3: echo 'File only partially uploaded'; break;
case 4: echo 'No file Uploaded'; break;
}
exit;
}

// Le fichier possède-t-il la bonne extension
$array_fichier=explode(".",$_FILES['userfile']['name'];

if ($array_fichier[1] != 'txt')
{
echo "Problem: le fichier n'est pas un .txt";
exit;
}

// Placer le fichier à l'emplacement désiré
$upfile = '/uploads/' .$_FILES['userfile']['name'] ;

if (is_uploaded_file($_FILES['userfile']['tmp_name']))
{
if (!move_uploaded_file($_FILE['userfile']['tmp_name'], $uofile))
{
echo 'problem: Could not move file to destination directory';
exit;
}
}
else
{
echo 'File uploaded Successfully<br /><br />';
// Reformater le contenue du fichier
$fp = fopen($upfile, 'r');
$contents = fread ($fp, filesize ($upfile));
fclose($fp);

$contents = strip_tages($contents);
$fp = fopen($upfile, 'w');
fwrite($fp, $contents);
fclose($fp);

// Afficher ce qui a été transférer avec une variable :
echo 'Aperçu du fichier télécharger :<br><hr>';
echo $contents;
echo '<br><hr>';
} //il manquait celle la 
?>
</body>
</html>
0
Si je peut me permettre réupé le topic ^^
il manque une parenthèse à la fin de cette ligne


// Le fichier possède-t-il la bonne extension
$array_fichier=explode(".",$_FILES['userfile']['name']);


J'avais juste besoin de l'idée mais ca pourrait en aider certains ;)
merci j'avais pas pensé au explode (pourtant si basique ^^ ) :)
0
un débutant
12 juil. 2010 à 04:11
merci beaucoup alain
0