Vous n'êtes pas identifié.
Voila,
j'ai un soucis au niveau de mes avatars.
j'ai diviser mon site entre 2 hébergements.
Un stocke principalement les images.
J'ai un bout de code, celui-ci :
$dossier = $_SERVER['DOCUMENT_ROOT'].'/allogroup.tk/sites/allocartoon.tk/img/avatar/';
et j'aimerais que url a l'intérieure soit : -http://www.monsite.com/img/avatar/
mais je n'y arrive pas...
Donc : SOS
Merci d'avance
stef
Hors ligne

Salut
stero11,
Je ne suis pas sûre d'avoir comprit ta question, néanmoins :
<?php $dossier = 'http://'.$_SERVER['HTTP_HOST'].'/img/avatar/'; //affiche http://monsite.com/img/avatar/ ?>
Hors ligne
re,
vu le bout de code je ne pense pas.... la ça va chercher l'image sur le site en soit... alors que les images sont sur un autre serveur... j'aurais du marquer -http://monautresite.com/img/avatar/
j'espère que c'est plus clair la....
Merci
Hors ligne
Bhaaaa,
$dossier = 'http://monautresite.com/img/avatar/';
Hors ligne
ok,
je cherchais bien compliqué,
je vais tester ça
merci
Hors ligne
Et bien le système me répond par une erreur , j'avais la meme erreur avant la modif de la ligne citée, et j'ai pensée que cela venait de la....
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to access -http://www.allogroup.tk/sites/allocartoon.tk/img/avatar/48766.png in /home/allocart/public_html/editprofil.php on line 33
Echec de l'upload.
voila donc mes variables :
$dossier = 'http://www.allogroup.tk/sites/allocartoon.tk/img/avatar/';
$taille_maxi = 200000;
$taille = filesize($_FILES['image']['tmp_name']);
$extensions = array('.png','.PNG','.jpg','.jpeg','.JPG','.JPEG','.gif','.GIF');
$extension = strrchr($_FILES['image']['name'], '.');
$fichier = $id.$extension;et voici le bloc de la ligne 33
if(!isset($erreur))
{
/*33*/ if(move_uploaded_file($_FILES['image']['tmp_name'],$dossier.$fichier))
{
$avatar = '/avatar/'.$id.$extension;
mysql_query('UPDATE users SET avatar="'.$avatar.'" WHERE pseudo="'.mysql_real_escape_string($user).'"');
echo 'Avatar modifié !';
echo '<script language="javascript" type="text/javascript"><!--
window.location.replace("http://'.$_SERVER['HTTP_HOST'].'/profil-'.$_SESSION['pseudo'].'.html");
--></script>';
}Merci d'avance pour ton aide.
Ps j'ai chmodé le dit repertoire en 777
Dernière modification par stero11 (09-11-2011 10:55:34)
Hors ligne
En même temps c'est normal ton "warning" puisque l'image "-http://www.allogroup.tk/sites/allocartoon.tk/img/avatar/48766.png" retourne un 404...ton image n'existe pas sur le serveur!
Hors ligne
le but est de uploader l'image... donc il ne l'upload pas la....
Hors ligne
voici le code d'affichage :
<center><table border="1" width="500" bgcolor="#CCCCCC">
<tr valign="top">
<td width="500" align="center">
<img style="height:128px;width:128px;border:1px solid #424242" src="http://allogroup.tk/sites/allocartoon.tk/img/<?php echo''.$donneesusers['avatar'].''?>" alt="avatar" />
<form name="sign" method="post" enctype="multipart/form-data">
<img src="http://www.allogroup.tk/sites/allocartoon.tk/img/icone-aide.png" style="width:15px; vertical-align:middle;" title="Choisissez une image représentant votre profil, sur votre ordinateur"><input type="file" name="image" />
<br /><br /><img src="http://www.allogroup.tk/sites/allocartoon.tk/img/icone-aide.png" style="width:15px; vertical-align:middle;" title="Validez en cliquant ici afin de voir votre avatar apparaître.">
<input type="submit" value="Modifier mon avatar"/><br /><span style="font-size:12px;color:red">Taille max : 200ko, 128x128 de préférence</span></form>
<form method="post">
</td>
</tr>
</table></center>Hors ligne
Je ne suis pas un "fortiche" dans l'upload d'image...néanmoins je pencherais pour un soucis dans la comparaison des extensions avec ton tableau array() (que je ne vois pas dans ton code).
Voici un exemple basé sur ton code qui fonctionne chez moi sous wamp :
<?php
$dossier = '/wamp/www/testemail/';
$id = 12;
$taille_maxi = 200000;
$taille = filesize($_FILES['image']['tmp_name']);
$extensions = array('image/png','image/PNG','image/jpg','image/jpeg','image/JPG','image/JPEG','image/gif','image/GIF');
$extension = strrchr($_FILES['image']['name'], '.');
$fichier = $id.$extension;
if(!in_array($_FILES['image']['type'] , $extensions)){
echo ''.$_FILES['image']['type'].' ne fait pas partie des extensions autorisés!';
}
else{
if(move_uploaded_file($_FILES['image']['tmp_name'],$dossier.$fichier)){
echo 'fichier uploadé';
}
}
?>Hors ligne
tjr la mm erreur mais cette fois ci a ligne 35, lié au rajout de code. voici tte la page.
<?php
$TITRE .= 'Edition du profil';
require_once 'haut.php';
if(!empty($_SESSION['pseudo']) && $is_include == true)
{
$reponseusers = mysql_query('SELECT * FROM users WHERE pseudo = "'.$_SESSION['pseudo'].'"');
$donneesusers = mysql_fetch_array($reponseusers);
mysql_free_result($reponseusers);
if(count($_FILES) > 0)
{
$user = $_SESSION['pseudo'];
$reponseusers = mysql_query('SELECT * FROM users WHERE pseudo="'.mysql_real_escape_string($user).'"');
$donneesusers = mysql_fetch_array($reponseusers);
$id = $donneesusers['id'];
$dossier = 'http://www.allogroup.tk/sites/allocartoon.tk/img/avatar/';
$taille_maxi = 200000;
$taille = filesize($_FILES['image']['tmp_name']);
$extensions = array('image/png','image/PNG','image/jpg','image/jpeg','image/JPG','image/JPEG','image/gif','image/GIF');
$extension = strrchr($_FILES['image']['name'], '.');
$fichier = $id.$extension;
if(!in_array($_FILES['image']['type'] , $extensions)){
echo ''.$_FILES['image']['type'].' ne fait pas partie des images autorisés!';
}
// if($taille>$taille_maxi) $erreur = 'Le fichier est trop gros.';
if(!isset($erreur))
{
/*35*/ if(move_uploaded_file($_FILES['image']['tmp_name'],$dossier.$fichier))
{
$avatar = '/avatar/'.$id.$extension;
mysql_query('UPDATE users SET avatar="'.$avatar.'" WHERE pseudo="'.mysql_real_escape_string($user).'"');
echo 'Avatar modifié !';
echo '<script language="javascript" type="text/javascript"><!--
window.location.replace("http://'.$_SERVER['HTTP_HOST'].'/profil-'.$_SESSION['pseudo'].'.html");
--></script>';
}
else exit('Echec de l\'upload.');
}
else exit($erreur);
}
elseif(isset($_POST['modifier']) && !empty($_POST['mail']))
{
$mail = mysql_real_escape_string($_POST['mail']);
$pseudo = $_SESSION['pseudo'];
mysql_query('UPDATE users SET mail = "'.$mail.'" WHERE pseudo = "'.$pseudo.'"');
echo '<script type="text/javascript">
window.location.replace("http://'.$_SERVER['HTTP_HOST'].'/profil-'.$_SESSION['pseudo'].'.html");
</script>';
}?>
<div class="post post-top type-post hentry category-non-classe topPost" style="position:relative; top:70px">
<center><br><img src="http://www.allogroup.tk/sites/allocartoon.tk/img/edition-profil.png"></center><br>
<h2>Modifier mon avatar</h2>
<center><table border="1" width="500" bgcolor="#CCCCCC">
<tr valign="top">
<td width="500" align="center">
<img style="height:128px;width:128px;border:1px solid #424242" src="http://allogroup.tk/sites/allocartoon.tk/img/<?php echo''.$donneesusers['avatar'].''?>" alt="avatar" />
<form name="sign" method="post" enctype="multipart/form-data">
<img src="http://www.allogroup.tk/sites/allocartoon.tk/img/icone-aide.png" style="width:15px; vertical-align:middle;" title="Choisissez une image représentant votre profil, sur votre ordinateur"><input type="file" name="image" />
<br /><br /><img src="http://www.allogroup.tk/sites/allocartoon.tk/img/icone-aide.png" style="width:15px; vertical-align:middle;" title="Validez en cliquant ici afin de voir votre avatar apparaître.">
<input type="submit" value="Modifier mon avatar"/><br /><span style="font-size:12px;color:red">Taille max : 200ko, 128x128 de préférence</span></form>
<form method="post">
</td>
</tr>
</table></center>
<br>
<h2>Modifier mon adresse email</h2>
<center><table border="1" width="500" bgcolor="#CCCCCC">
<tr valign="top">
<td width="500" align="center">
<br />Adresse email : <br /><input style="width:300px" type="text" name="mail" id="mail" value="<?php echo''.$donneesusers['mail'].''?>" /><br />
<br /><img src="http://www.allogroup.tk/sites/allocartoon.tk/img/icone-aide.png" style="width:15px; vertical-align:middle;" title="Inscrivez ici votre nouvelle adresse email et validez, de manière à ce que votre nouvellle adresse email soit prise en compte">
<input style="margin-top:5px;margin:auto;" type="submit" value="Valider vos changements" name="modifier" />
</form>
</td>
</tr>
</table></center>
<div class="clear"></div></div></div>
<?php require_once 'menu.php';
}
?>Hors ligne
Teste ce code dans un fichier à part en prenant soins de changer l'url dans la variable "$dossier" :
<?php
if(isset($_POST["Valider"]))
{
echo '<pre>';
print_r($_FILES);
echo '</pre>';
$dossier = '/wamp/www/testemail/';
$id = 12;
$extensions_autoriser = array('image/png','image/PNG','image/jpg','image/jpeg','image/JPG','image/JPEG','image/gif','image/GIF');
$extension = strrchr($_FILES['image']['name'], '.');
$fichier = $id.$extension;
echo '$extension = '.$extension.'<br/>
$_FILES[\'image\'][\'type\'] = '.$_FILES['image']['type'].'<br/>
$fichier = '.$fichier.'<br/>';
//teste si l'extension est autorisé
if(!in_array($_FILES['image']['type'] , $extensions_autoriser)){
echo 'Le fichier « '.$_FILES['image']['type'].' » ne fait pas partie des extensions autorisés!';
}
//si extension autorisé on déplace le fichier
elseif(move_uploaded_file($_FILES['image']['tmp_name'],$dossier.$fichier)){
echo 'fichier uploadé';
}
//isset valider
}
?>
<form method="post" action="#" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="2097152">
<input type="file" name="image">
<input type="submit" value="Envoyer" name="Valider">
</form>Teste "$dossier" avec l'url -http://www.allogroup.tk/sites/allocartoon.tk/img/avatar/ et /sites/allocartoon.tk/img/avatar/ et dit moi les erreurs retournés.
Hors ligne
ok, je fais ça demain... je suis crevé ce soir...
Hors ligne
Propulsé par PunBB
© Copyright 2007
Forum créer un site