2010-09-06 18 views
1

Je construis un script de téléchargement php pour les images, et il refuse de fonctionner du tout.Le script de téléchargement d'image PHP ne fonctionnera pas

Tout d'abord, j'ai une forme simple de poste comme celui-ci:

<form action="variables.php" method="post" enctype="multipart/form-data" > 
    <p>Event title : <input type="text" name="name" required></p> 
    <p>Description : <input type="text" name="description" required></p> 
    <input type="file" name="file" id="file"/> 
    <input type="submit" value="submit"> 
    </form> 

Cela alimente ensuite les champs soumis à "variables.php", qui ressemble à ceci:

<?php 
require("myfunctions.php"); 

$title = $_POST['name']; 
$description =$_POST['description']; 
    $img = $_FILES["file"]; 

imgput($img); 
generator($title, $description); 
    ?> 

« imgput » et « générateur » sont des fonctions de « myfunctions.php », mais le problème est pas « genrator », voici donc ce que « myfunctions.php » ressemble à:

<?php 
function imgput($img) { 
if ((($img["type"] == "image/gif") 
|| ($img["type"] == "image/jpeg") 
|| ($img["type"] == "image/pjpeg")) 
    && ($img["size"] < 500000)) 
    { 
    if ($img["error"] > 0) 
    { 
    echo "Return Code: " . $img["error"] . "<br />"; 
    } 
    else 
    { 
    echo "Upload: " .$img["name"] . "<br />"; 
    echo "Type: " . $img["type"] . "<br />"; 
    echo "Size: " . $img["size"]/1024) . " Kb<br />"; 
    echo "Temp file: " . $img["tmp_name"] . "<br />"; 

    if (file_exists("../uploads/" . $img["name"])) 
     { 
     echo $img["name"] . " already exists. "; 
     } 
    else 
     { 
     move_uploaded_file($img["tmp_name"], 
     "../uploads/" . "event1.jpg"); 
     echo "Stored in: " . "../uploads/event1.jpg"; 
     } 
    } 
    } 
else 
    { 
    echo "Invalid file"; 
    } 
} 

?> 

Toute aide serait géniale. J'ai essayé d'exécuter des échos de test juste après que "imgput" commence, mais il ne fonctionnera même pas.

Répondre

0

vous manque un ( ici:

echo "Size: " . $img["size"]/1024) . " Kb<br />"; 
            ^^^ no matching (available 

vous vouliez ce plus probable:

echo "Size: " . ($img["size"]/1024) . " Kb<br />"; 

Si vous aviez error_reporting allumé, vous auriez vu l'erreur de syntaxe:

PHP Parse error: syntax error, unexpected ')', expecting ',' or ';' in /home/marc/test.php on line 16 
+0

Merci! Et merci de supporter le formatage foiré. – Ian