Probleme "syntax error, unexpected $end"

LeGenDz -  
 un débutant -
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
Configuration: Windows XP
Firefox 3.0.4

4 réponses

  1. Alain_42 Messages postés 5413 Statut Membre 904
     
    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
    1. LeGenDz
       
      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
  2. LeGenDz
     
    Double post, désoler, voici le message d'erreur :

    Problem: file is not plain text

    Pourriez-vous m'aider.

    Bye
    0
    1. Alain_42 Messages postés 5413 Statut Membre 904
       
      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
      1. LeGenDz > Alain_42 Messages postés 5413 Statut Membre
         
        Donc que puis-je faire ?

        Bye
        0
      2. Alain_42 Messages postés 5413 Statut Membre 904 > LeGenDz
         
        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
      3. LeGenDz > Alain_42 Messages postés 5413 Statut Membre
         
        Peux-tu me mettre le texte à mettre dans le code please, parceque je sais pas ou le mettre ... :(

        Bye
        0
      4. Alain_42 Messages postés 5413 Statut Membre 904 > LeGenDz
         
        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
  3. Too
     
    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