Erreur dans mon script

drogba7213 Messages postés 1550 Statut Membre -  
drogba7213 Messages postés 1550 Statut Membre -
Bonjour,

Je souhaiterais afficher une image alors j'ai pensé à passer par l'url du serveur mais j'ai une erreur

<?
echo "<a href='/upload/$_POST['fichier']'></a>";
?>

voici l'erreur

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /mnt/104/sdb/7/8/site.inter/stage/concours_ts.php on line 602

PS: Je ne sais pas si c'est possible de faire ca si vous avez quelque chose de plus clair...

13 réponses

drogba7213 Messages postés 1550 Statut Membre 21
 
up
0
Arrakis
 
Bonjour,

<?
$nom=$_POST['fichier']
echo "<a href=\"/upload/",$nom,"\"></a>";

?>

Par contre ça n'engage que moi mais faire un lien avec une variable POST absolument pas vérifiée comme tu le fait, niveau sécurité c'est pas top...
0
drogba7213 Messages postés 1550 Statut Membre 21
 
Et est ce que ca fonctionnerait je veux dire est ce que ca va faire afficher la photo?
0
drogba7213 Messages postés 1550 Statut Membre 21
 
Avec ta synthaxe j'ai une autre erreur

Parse error: syntax error, unexpected T_ECHO in /mnt/104/sdb/7/8/site.inter/stage/concours_ts.php on line 603
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Arrakis
 
Oui si le chemin est exact...

Mais verifie avant que tu as bien affaire a une image et pas un script ou autre...
0
drogba7213 Messages postés 1550 Statut Membre 21
 
je fais déja un test lors de l'upload sur le serveur
donc tinquiete pas pour la sécurité

et le lien du site serait /upload/

donc il est bon nom?
0
drogba7213 Messages postés 1550 Statut Membre 21
 
Tien regarde a partir de l'upload tu ferais comment pour le faire s'afficher toi?

$dossier = '/upload/';
$fichier = basename($_FILES['fichier']['name']);
$taille_maxi = 5000000;
$taille = filesize($_FILES['fichier']['tmp_name']);
$extensions = array('.png', '.jpg', '.jpeg');
$extension = strrchr($_FILES['fichier']['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type png, jpg, jpeg';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['fichier']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].$dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
0
Arrakis
 
Parse error: syntax error, unexpected T_ECHO in

oui il manque un ; a la ligne d'avant.

Pour l'afficher:

$tmp= $_SERVER['DOCUMENT_ROOT'].$dossier."/".$fichier;
echo "<img src=$tmp />";

a adapter si ya deja les / ou pas.
0
drogba7213 Messages postés 1550 Statut Membre 21
 
ca ne m'affiche pas l'image

alors effetivement il y a l'emplacement
par contre elle ne se charge pas quand je clik droit et je fais afficher l'image
ca me répond document non trouvé
0
drogba7213 Messages postés 1550 Statut Membre 21
 
donc j'ai adapté ton script ca m'était un / de trop

donc j'ai fait ca

$tmp= $_SERVER['DOCUMENT_ROOT'].$dossier."".$fichier;
echo "<img src=$tmp />";

et l'url ca répond ca

http://site.inter.free.fr/mnt/104/sdb/7/8/site.inter/upload/
0
drogba7213 Messages postés 1550 Statut Membre 21
 
j'ai réussit a aller a la bonne url par contre je ne sais pas pourquoi l'image ne s'affiche pas est ce un problème de chmod?
0
drogba7213 Messages postés 1550 Statut Membre 21
 
j'ai beau mettre ca au niveau de l'upload

chmod("$_SERVER['DOCUMENT_ROOT'].$dossier.$fichier", 0777);

ca ne fonctionne pas

ma ligne n'est pas correct?
0
drogba7213 Messages postés 1550 Statut Membre 21
 
up
0