Aller au Forum:
Notez ce sujet :

Page(s) (2): [ <   1   2   ]   Sujet précédent   Sujet suivant
Auteur
Sujet    Tout développer | Tout contracter NOUVEAU SUJET    RÉPONDRE
Réduire ce messageBBig_CheesiusMaitreNiveau 17 · Critique de comptoirRéférenceur Aguerri
Membre depuis
2002
Messages
3814
Plus
Membre n°
5062
Inscription
15 Oct 2002
Localisation
Nul part ailleurs.
Âge
43 ans
Sujets lancés
258
Ancienneté
98 %
Participation
75 %
Ancien message 10-11-2005 14:53
Non en fait l'erreur parle d'elle même, elle se situe en debut de texte mais je ne sais pas quoi modifier.

Citation


<?
function upload($file, $dest)
{
$file['name'] = rawurlencode($file['name']);
if( ! $fd = fopen( $file['tmp_name'], "rb" ) ) return false;
$data = '';
while( ! feof( $fd ) ) if( ! $data .= fread( $fd, 1024 ) ) return false;
$tmp_name = $dest;
if( ! $fl = fopen( $tmp_name, "wb" ) ) return false;
if( ! $fp = fwrite( $fl, $data ) ) return false;
fclose( $fl );
//$size = filesize($tmp_name);
return true;
}



C'est qu'il ya une mauvaise allocation de dossier quand on lit ce passage du message d'erreur :

Citation


File(/tmp/phpIPQzTc) is not within the allowed path(s)



Sinon pour finir je me defends en php,sql

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageWwlad93ExpertNiveau 14 · Jury du publicRéférenceur Appliqué
Membre depuis
2002
Messages
2596
Plus
Membre n°
4328
Inscription
09 Sep 2002
Localisation
Utopia
Sujets lancés
163
Ancienneté
98 %
Participation
68 %
Ancien message 10-11-2005 17:53
Là je ne vois pas. Désolé.

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageBBig_CheesiusMaitreNiveau 17 · Critique de comptoirRéférenceur Aguerri
Membre depuis
2002
Messages
3814
Plus
Membre n°
5062
Inscription
15 Oct 2002
Localisation
Nul part ailleurs.
Âge
43 ans
Sujets lancés
258
Ancienneté
98 %
Participation
75 %
Ancien message 18-01-2006 16:39
up !

Probleme toujours d'actualité.

Ma fonction upload v2

Citation


<html>
<head>
</head>
<body>
Erreur", 'Seules les images JPG, GIF, PNG ou BMP sont
acceptées', 'pleure.jpg', '' ); // avatar extension $fd =
fopen( $file['tmp_name'], "rb" ); $imgdata = ''; while( ! feof( $fd ) )
$imgdata .= fread( $fd, 1024 ); $tmp_name = "images/envoi/tmp/" .
$file['name']; $fl = fopen( $tmp_name, "wb" ); $fp = fwrite( $fl,
$imgdata ); fclose( $fl ); //$size = filesize($tmp_name); if( eregi(
"^(.*)\.gif$", $file['name'] ) ) { $type = 'png'; $src =
imagecreatefromgif( $tmp_name ); } elseif( eregi( "^(.*)\.png$",
$file['name'] ) ) { $type = 'png'; $src = imagecreatefrompng( $tmp_name
); } elseif( eregi( "^(.*)\.jpg$", $file['name'] ) ) { $type = 'jpg';
$src = imagecreatefromjpeg( $tmp_name ); } else message_die( "Erreur", "Ne peut créer
l'image", 'pleure.jpg', '' ); $width = imagesx( $src ); $height =
imagesy( $src ); if( $width &gt; 2000 OR $height &gt; 2000 ) {
unlink( "images/envoi/tmp/" . $file['name'] ); message_die( "Erreur", "Les dimensions de l'image
sont trop grandes : max( 2000 x 2000 )", 'pleure.jpg', '' ); //
dimensions } $newwidth = $g_width; $newheight = $height * $g_width /
$width; if( $width &gt; $g_width OR $height &gt; $g_height ) {
if( $width &gt;= $height AND $width &gt; $g_width ) { $newwidth
= $g_width; $newheight = ( $height / $width ) * $g_height; if(
$newheight &gt; $g_height ) { $newheight = $g_height; $newwidth = (
$newwidth / $newheight ) * $g_height; } } elseif( $height &gt;
$width AND $height &gt; $g_height) { $newheight = $g_height;
$newwidth = ( $width / $height ) * $newwidth; if( $newwidth &gt;
$newwidth ) { $newwidth = $newwidth; $newheight = ( $newheight /
$newwidth ) * $newwidth; } } } else { $newwidth = $width; $newheight =
$height; } $name = ( ! empty( $g_name ) ) ? ( $g_name . substr(
$file['name'], -4 ) ) : ( $file['name'] ); $dest =
imagecreatetruecolor( $newwidth ,$newheight ); imagecopyresampled(
$dest, $src, 0, 0, 0, 0, $newwidth, $newheight, $width, $height ); if(
$type == 'png' ) imagepng( $dest, $g_path . $name ); elseif( $type ==
'jpg' ) imagejpeg( $dest, $g_path . $name ); elseif( $type == 'gif' )
imagepng( $dest, $g_path . $name ); unlink( "images/envoi/tmp/" .
$file['name'] );
}
?&gt;
</body>
</html>



et je reste toujours avec la même erreur :

Citation

Warning: fopen(): open_basedir restriction in effect. File(/tmp/phpJvmnLa) is not within the allowed path(s): (.:/home/sites) in /home/sites/site44/web/includes/functions_upload.php on line 5

Warning: fopen(/tmp/phpJvmnLa): failed to open stream: Operation not permitted in /home/sites/site44/web/includes/functions_upload.php on line 5


Ca commence a faire un moment que je galère dessus, pitié!!!

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageWwlad93ExpertNiveau 14 · Jury du publicRéférenceur Appliqué
Membre depuis
2002
Messages
2596
Plus
Membre n°
4328
Inscription
09 Sep 2002
Localisation
Utopia
Sujets lancés
163
Ancienneté
98 %
Participation
68 %
Ancien message 18-01-2006 16:49
On dirait que tu essaies d'ouvrir (ou de créer) un fichier situé dans /tmp/ et c'est interdiit.
Tu ne peux ouvrir des fichiers que dans /home/sites/.
C'est le contenu de ta variable $file[tmp_name] qui n'est pas bon.

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageSSchoubiGuruNiveau 42 · ScénaristeRéférenceur Émérite
Membre depuis
2002
Messages
12627
Plus
Membre n°
566
Inscription
10 Mar 2002
Âge
47 ans
Sujets lancés
1428
Ancienneté
100 %
Participation
97 %
Ancien message 18-01-2006 17:12
Oui, à mon avis Apache n'a pas les droits d'écriture dans /tmp donc le repertoire que ton script essaie d'utiliser n'est pas accessible...

__________________

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageWwlad93ExpertNiveau 14 · Jury du publicRéférenceur Appliqué
Membre depuis
2002
Messages
2596
Plus
Membre n°
4328
Inscription
09 Sep 2002
Localisation
Utopia
Sujets lancés
163
Ancienneté
98 %
Participation
68 %
Ancien message 18-01-2006 17:27
Voilà ce que je ferais à ta place. Bon c'est du bricolage mais ça devrait marcher.

D'abord tu crées un dossier 'tmp' dans /home/sites/site44/ via FTP.

Le but c'est de remplacer "/tmp/phpJvmnLa" par "/home/sites/site44/tmp/phpJvmnLa" dans ta variable $file['tmp_name'].

$new_file_name = str_replace('/tmp/', '/home/sites/site44/', $file['tmp_name']);
// avatar extension
$fd =fopen( $new_file_name, "rb" );
...


Et normalement le tour est joué.

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageBBig_CheesiusMaitreNiveau 17 · Critique de comptoirRéférenceur Aguerri
Membre depuis
2002
Messages
3814
Plus
Membre n°
5062
Inscription
15 Oct 2002
Localisation
Nul part ailleurs.
Âge
43 ans
Sujets lancés
258
Ancienneté
98 %
Participation
75 %
Ancien message 19-01-2006 10:59
Je vous tiens au courant, je sors le marteau et je vais bricoler

Signaler ce message à un modérateur | IP: Logguée

Il est actuellement 16:22 (GMT) NOUVEAU SUJET    RÉPONDRE   
Page(s) (2): [ <   1   2   ]  Sujet précédent   Sujet suivant


Aller au Forum:
Notez ce sujet :


Réponse rapide
Afficher une version imprimable | Chercher dans ce sujet | Envoyer cette page par email | S'inscrire à ce sujet | Télécharger ce sujet
Règles du forum :
Créer de nouveaux sujets
Répondre aux messages
Attacher des fichiers
Editer vos messages
: not autorisé
: not autorisé
: not autorisé
: not autorisé
Le Code HTML est OFF
Le BBCode est ON
Les Smileys sont ONs
Le code [IMG] est ON
Page générée en 0.039538 secondes en exécutant 44 requêtes SQL.
Apache - Compression GZIP : Activée.