begin process at 2008 08 28 19:15:30
1 233 316 membres
412 nouveaux aujourd'hui
14 291 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

UPLOAD D'IMAGE AVEC OPTION (RENOMER - CHOIX EXTENSION - ENREGISTREMENT DANS LA TABLE MYSQL)


Information sur la source

Catégorie :Base de données Niveau : Expert Date de création : 05/11/2002 Date de mise à jour : 05/11/2002 14:36:21 Vu / téléchargé: 27 823 / 7 924

Note :
8,39 / 10 - par 18 personnes
8,39 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (99)
Ajouter un commentaire et/ou une note

Description

un formulaire et une page de 10 lignes de code pour upload renomer et choisir l'extension d'une image le tout enregistrer en même temps dans une base de donnée MYSQL
pourquoi j'ai poster ce code parce que je suis sur que vous apprecirez le court code , la simplisité de sont organisation ,et en plus il sera j'en suis sur un exemple très facile a comprendre pour les personne qui assimile mal ce genre de manipulation .
bien sur un upload d'image souvent on en trouve , mais c'est sois un foutoire de code de 300 ligne sois ya juste le upload
alors la je vous est mis un text pour l'image , un titre , pourquoi pour que vous puissiez facilement creer vos new , albums photo ect..
amusé vous bien et pensser a lire le fichier install.txt.
      
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

  • signaler à un administrateur
    Commentaire de rottweiler le 05/11/2002 14:10:29

    acctuellement je le repare j'ai fais une petite error y'en a pas pour longtemp ;)

  • signaler à un administrateur
    Commentaire de rottweiler le 05/11/2002 14:19:41

    voila c'est operationel petit faute de frappe dans mon formulaire ;) reparer

  • signaler à un administrateur
    Commentaire de rottweiler le 14/11/2002 01:59:34

    bon en travaillant sur la version 2 de mon code j'ai vu que j'avais fais ca un peut vite et j'ai pas tester j'ai put voir que j'avais fais une error dans la requete je vous prie donc de modifier description$ par $description :/  ensuite dans le fichier txt d'installation ya aussi une error alors voila le bon

    CREATE TABLE images (
      id mediumint(9) NOT NULL auto_increment,
      file varchar(13) NOT NULL default '',
      titre tinytext NOT NULL,
      description mediumtext NOT NULL,
      PRIMARY KEY  (id)
    ) TYPE=MyISAM;

    bien sur pensser bien a mettre vos paramettre de connection
    'localhost' 'root' ''
    et votre base bien sur
    puis creer un répertoire nomé (IMG) dans la racine de votre www
    encore mille escuse si je vous est fais perdre du temps

  • signaler à un administrateur
    Commentaire de rottweiler le 15/11/2002 14:41:56

    vous remarquerer que j'avais mis PRIMARY KEY  (id_img) c'est la que javais fais une error voila la modif -> PRIMARY KEY  (id)

  • signaler à un administrateur
    Commentaire de Jefflec le 19/02/2003 21:56:53

    Salut,
    C'est cool, je cherchais un code pour renommer les fichiers d'upload...
    Par contre, si je peux te donner un conseil, c'est de faire attention à l'orthographe, pis aussi mettre les balises HTML, BODY etc... pour faire un code "propre".
    J'espère que tu m'en voudras pas d'être un peu pointilleux... ;o)
    et merci pour ta contribution,
    Jefflec

  • signaler à un administrateur
    Commentaire de rottweiler le 20/02/2003 09:25:09

    :) je t'en veut pas c'est vraix ce que tu dit

  • signaler à un administrateur
    Commentaire de mkknot le 27/04/2003 23:51:08

    G un PB !!! Ca marche po sur mon site (en local par contre nikel !), G toujours ce pb de permission, qqn peut m'aider SVP ?
    Sinon je me suis permis de rajouter un pti controle ...
    Getimagesize va cherche des infos sur l'image (taille,type ..;etc )
    La colone [2] contient le type de l'image
    Si il est égal à 2 c'est un Jpeg , si c'est 1 c'est un Gif ...etc


    $controle = getimagesize($HTTP_POST_FILES["file"]["tmp_name"]);
    if ($controle[2] == 2)
    {   move_uploaded_file($HTTP_POST_FILES["file"]  ["tmp_name"],$chemin);
      
       mysql_query("INSERT INTO $table (file, titre, description)  VALUES('$newname','$titre','$description');");
       echo 'Envoi terminé, merci !';

  • signaler à un administrateur
    Commentaire de sharkit le 23/09/2003 10:19:21

    zalut
    Félicitations pour ce script ( j'ai bien ramé avant de trouver ce qu'il me falait !!! )
    Je l'ai intégré à un espace membres et il fonctionne à merveilles.
    Mais ( et oui, il y a toujours un mais ... ) je bloque au moment où l'inscis à l'espace membres veut modifier sa photo, je ne vois pas encore commenta faire. Alors si vous avez de bonnes idées, elles sont les bienvenues ...
    Merci et bravo !!!
    Sharkit

  • signaler à un administrateur
    Commentaire de rottweiler le 25/09/2003 22:59:10

    edite les donnés en session et écrase la photo d'origine par le même nom tout simplement.
    si le gas il a appeler ca photo toto.jpg
    fait en sorte qu'il re-envoie une photo nomé toto.jpg

    voilà

  • signaler à un administrateur
    Commentaire de DarkBoss le 01/10/2003 19:47:04

    hum pour ton directory de linstall fodré just mettre
    if (chdir("img"))
    {
    MKDIR("img");
    }

  • signaler à un administrateur
    Commentaire de Marius5962 le 17/10/2003 11:55:25

    Bonjour

    J'ai ajouter les champs du formulaire dans mon script!
    j'ai aussi ajouter les champs,dans le fichier sql, mais quand j'essaye le nouveau script il me dit:
    Column count doesn't match value count at row 1

    Qqn peut m'aider?
    Je mets aussi ma table
    CREATE TABLE images (
    id mediumint(20) NOT NULL auto_increment,
    pseudo varchar (23) NOT NULL,
    email varchar (50) NOT NULL,
    dat varchar (10) NOT NULL,
    departement varchar (2) NOT NULL,
    ville varchar (20) NOT NULL,
    titre varchar (30) NOT NULL,
    rubrique varchar(20) NOT NULL,
    texte varchar (250) NOT NULL,
    pass varchar (10) NOT NULL,
    file varchar(13) NOT NULL default '',
    PRIMARY KEY (id)
    ) TYPE=MyISAM;

    Un grand merci d'avance
    Un débutant

  • signaler à un administrateur
    Commentaire de Marius5962 le 17/10/2003 14:58:25

    Se probleme est resolut,
    maintenant, les photos ne se copie pas dans le dossier!
    Je precise qu'il n'y a aucune erreur mysql!?
    Si qqn peut m'aider a resoudre ce probleme,sa serait sympa de sa part!
    Car je RAME

  • signaler à un administrateur
    Commentaire de Marius5962 le 20/10/2003 14:17:43

    S'est bon!
    Probleme resolut :o)

  • signaler à un administrateur
    Commentaire de hopilaeupeur le 19/01/2004 14:47:25

    Salut !
    J'ai récupéré le code source et tout marche nickel. Maintenant il me reste un petit probleme : j'aimerai pouvoir effacer les images (du côté de la base no soucy) mais elles restent sur le ftp et occupent de la place pour rien. Si quelqu'un a une solution... Merci bien

  • signaler à un administrateur
    Commentaire de Le Lapin le 26/05/2004 16:54:14

    Salut à tous,

    c la premiere fois que je viens et que je fais appel au service de qqn...
    Se script m'intéresse mais malheureusement pour moi je n'arrive pas à le faire tourner correctement. La creation de la base OK (avec les modifs dites plus haut), l'affichage pour recuperer l'image c OK, OK egalement pour la connexion base (la je suppose mais normalement c bon), mais le code de upload.php affiche des erreurs :

    Notice: Undefined variable: rename in c:\program files\easyphp1-7\www\uploadimages\upload.php on line 7

    Notice: Undefined variable: ext in c:\program files\easyphp1-7\www\uploadimages\upload.php on line 7

    Warning: move_uploaded_file(./img/): failed to open stream: Permission denied in c:\program files\easyphp1-7\www\uploadimages\upload.php on line 13

    Warning: move_uploaded_file(): Unable to move 'C:\Program Files\EasyPHP1-7\tmp\php9.tmp' to './img/' in c:\program files\easyphp1-7\www\uploadimages\upload.php on line 13

    ETC ...

    Je suis sous XP, j'utilise easy PHP 1.7 pour info.

    Merci par avance.

    Je remercie egalement rottweiler pour toutes les étapes et le code qui a été détaillé.

  • signaler à un administrateur
    Commentaire de Le Lapin le 26/05/2004 17:43:31

    Re bonjour c lapin,

    J'ai trouvé l'erreur, elle était toute simple, je m'excuse :
    je m'explique il fallait rajouter du code entre mysql_select_db("photos"); et //newname voudra dire nom+ext qui...

    ce code est juste en dessous pour info

    //votre table
    mysql_select_db("photos");

    //Permet de recupérer les valeurs envoyé de form1.php
    $ext =$_POST[ 'ext' ];
    $rename =$_POST[ 'rename' ];
    $titre =$_POST[ 'titre' ];
    $description =$_POST[ 'description' ];

    //newname voudra dire nom+ext qui arriverons du formulaire biensur ex:monchien/.gif
    $newname =($rename.$ext);

    Voila,

    Merci encore à rottweiler pour les explications de son code

    PS : Pour les débutants, je suis une bille en prog et j'ai réussi à faire tourner le code (d'ailleur c le seul code d'upload image que g reussi à faire tourné)

    @+

  • signaler à un administrateur
    Commentaire de rottweiler le 28/05/2004 15:57:36

    promit je rebidouille le code pendant une pause

    merci a tous les gas

  • signaler à un administrateur
    Commentaire de slog9 le 10/06/2004 17:56:09

    Slt!
    Merci pour ta source, super simple et sans prise de tete avec connection ftp, login & mdp... Bref cZest nickel.

    Jte laisse lZadresse du site si tu veux voir ce que ca donne, mais tu pourra pas utiliser ton script, je mZen suis servi pour la gestion des photos du site... Si tu pouvais également me laisser un avis exterieur, jZten remercie dZavance :)

    http://www.grundschule-toitenwinkel.de

  • signaler à un administrateur
    Commentaire de rottweiler le 10/06/2004 18:05:10

    Slt Slog9

    il ne marche pas ton lien photo ;)

  • signaler à un administrateur
    Commentaire de slog9 le 10/06/2004 18:11:59

    dans le site ou pour te connecter au site?...

  • signaler à un administrateur
    Commentaire de slog9 le 10/06/2004 18:33:49

    Jvois pas, ca fait 2 jours quZil est en ligne, je lZai testé dans tous les sens et normalement ya pas de bugs...
    Il a juste un peu de mal à tourner, g un peu abusé sur les graphismes...

  • signaler à un administrateur
    Commentaire de 0ri0n le 08/07/2004 11:32:25

    J'ai le meme probleme que "mkknot" :

    "G un PB !!! Ca marche po sur mon site (en local par contre nikel !), G toujours ce pb de permission, qqn peut m'aider SVP ?"

    Warning: rename(/tmp/php9ToLjT,./img/): Not a directory...

    T'as du lui répondre mais je n'arrive pas a voir, ça bugé en dessous, le pb vient de ou ? Parce que en effet en local ca marche nikel, et aussi moi j'aimerai rajouter une fonction pour que si j'envoie une image qu'a le meme nom ça érase l'existante. Merci A++

  • signaler à un administrateur
    Commentaire de 0ri0n le 08/07/2004 12:20:25

    je crois avoir compris, en fait ça copie le temp dans la racine de mon hébergeur, et a cet endroit je ne suis pas autorisé (normal).

    Permission denied in /srv/www/vhosts/agence-immobil...

    Je me trompe peut etre, comment arranger ça et choisir la destination du tmp ? Merci, sinon, nikel le script, c'est un des seuls qui marchent

  • signaler à un administrateur
    Commentaire de 0ri0n le 08/07/2004 13:07:27

    Yessss j'ai trouvé fallait, dans le client ftp, faire clic droit CHMOD et mettre écriture partout :)

  • signaler à un administrateur
    Commentaire de rottweiler le 18/07/2004 02:38:36

    bein voilà comme tout ftp qui ce respect il faut mettre le répertoire qui dois recevoir une ecriture "creaton fichier"
    dois etre mis en CHMOD 777

  • signaler à un administrateur
    Commentaire de rottweiler le 18/07/2004 02:46:49

    sinon pour ecrasé une photo déjà existante moi je propose la formule simple de checking existance ;)

    if(!$ID) { // nouvel enregistrement
                      $query = "INSERT INTO $Table_image ";
                      $query.= "(Valide,Type,Photo) VALUES(";
                      $query.= "\"0\",";
                      $query.= "\"$ext\",";
                      $query.= "\"$nomphoto\" ";
                      $query.= ")";

                      $message = "photo ajoutée.";

                      }else{ // mise a jour de la photo

                      $query = "UPDATE $Table_image SET ";
                      $query.= "Valide=\"0\",";
                      $query.= "ext=\"$ext\",";
                      $query.= "nomphoto=\"$nomphoto\" ";
                      $query.= "WHERE ID=\"$ID\" ";

                      $message= "photo modifiée.";
                      }

    La matrix à parlé ;)

  • signaler à un administrateur
    Commentaire de 0ri0n le 20/07/2004 18:36:49

    merci mais snif ! j'ai acheté un hébergement chez online.net et le CHMOD  777 n'est pas accepté


    4- La documentation de mon script me dit que je dois donner les droits d'écriture aux scripts PHP, que dois-je faire? Je dois faire un CHMOD pour permettre l'écriture et mon client FTP me dit que c'est impossible.
    R : Les scripts PHP ont tous les droits d'écriture et de lecture dans le site sur lequel ils sont exécutés.
    Par défaut, il n'est pas nécessaire de manipuler les droits.

  • signaler à un administrateur
    Commentaire de rottweiler le 31/07/2004 18:10:07

    c'est obligé surtout cher online il sont bien eux d'après mes rumeurs.

  • signaler à un administrateur
    Commentaire de thonypc le 31/07/2004 21:08:47

    ca marche impecable ;) mais quelqu'un aurait une modif a faire pour que ca n'écrase pas un fichier existant?

    merci

  • signaler à un administrateur
    Commentaire de bozdat le 29/09/2004 11:48:48

    nickel rott super script ça faisait longtemps que j'en cherchais un qui faisait l'upload et l'insert dans la base dans le même temps

    maintenant il me manque plus qu'à ajouter une fonction de création de vignette et le tour est joué pour moi (souhaitez moi bonne chance je suis une bille en php)

    si j'y parviens je mettrais le code qu'on pourra prendre comme une extension au super script de rott

  • signaler à un administrateur
    Commentaire de bozdat le 29/09/2004 13:19:16

    voilà tout marche nickel je bosse sur un serveur free donc ça devrait aussi marcher ailleurs

    j'ai donc rajouter la fonction de redimensionnement de l'image uploadée et insérée dans la base (un champs de plus que celle proposée par rott)

    amusez vous bien
    // on récupère la taille de l'image

    $taille = getimagesize("$chemin");
    $h_i = $taille[1];
    $w_i = $taille[0];

  • signaler à un administrateur
    Commentaire de rottweiler le 21/10/2004 19:03:22

    ;) merci merci

  • signaler à un administrateur
    Commentaire de pyranhaz le 30/11/2004 18:33:09

    Pourrait-on le plus simplement du monde ajouter une fonction qui gère les extensions autorisés et le poids des images AVANT le upload ???

    pour ma part, je pense qu'un poids maximal de 50 ko. serait amplement suffisant...

    Merci d'avance

  • signaler à un administrateur
    Commentaire de rottweiler le 30/11/2004 23:29:54

    c'est claire que tu peu !
    mais l'interet du scripts en 10 lignes n'a plus ca valeur.
    perso je peu te faire ca en moin 1 heure mais à quoi bon tu as déjà une tonne d'exemple sur le net.

  • signaler à un administrateur
    Commentaire de Blacknight91titi le 31/03/2005 18:06:00

    Tu oubli un truc.
    free n'autorise pas la modification des pages perso comme sa
    donc sa marche pas pour moi

  • signaler à un administrateur
    Commentaire de kitopabe le 07/05/2005 14:09:18

    bjr
    quelqu'un peut il m'aider les photos n'arrive pas dans le dossie img et je n'ai aucune erreur sql
    merci d'avance
    pat

  • signaler à un administrateur
    Commentaire de rottweiler le 27/07/2005 20:26:45

    kitopabe la tu créer et est t il en chmod 777 ?

  • signaler à un administrateur
    Commentaire de yvonig le 05/08/2005 02:00:49

    salut !
    j'ai le meme pb que lapin il y a un an :

    Notice: Undefined variable: rename in c:\program files\easyphp1-7\www\upload\upload.php on line 7

    Notice: Undefined variable: ext in c:\program files\easyphp1-7\www\upload\upload.php on line 7

    Notice: Undefined index: file in c:\program files\easyphp1-7\www\upload\upload.php on line 13

    Notice: Undefined variable: titre in c:\program files\easyphp1-7\www\upload\upload.php on line 15
    envoye terminé

    j'ai testé ca solution et maintenant j'ai :

    Notice: Undefined index: ext in c:\program files\easyphp1-7\www\upload\upload.php on line 7

    Notice: Undefined index: rename in c:\program files\easyphp1-7\www\upload\upload.php on line 8

    Notice: Undefined index: titre in c:\program files\easyphp1-7\www\upload\upload.php on line 9

    Notice: Undefined index: description in c:\program files\easyphp1-7\www\upload\upload.php on line 10

    Notice: Undefined index: file in c:\program files\easyphp1-7\www\upload\upload.php on line 20
    envoye terminé

    une idée serai la bien venue, ou si quelqu un a deja reussi à faire marcher ce code je serai enchanté d'admirer ses prouesses...

    merci d'avance

  • signaler à un administrateur
    Commentaire de rottweiler le 05/08/2005 14:10:33

    c'est pourtant claire , tes variables sont indefinies
    lapin ta donné la réponse , ce code marche à merveille tu trouvera pas plus simple et plus claire.




  • signaler à un administrateur
    Commentaire de yvonig le 05/08/2005 15:18:54

    je crois avoir appliqué sa solution mais comme je l'explique plus haut j'ai maintenant des undefined index et je suis bloqué...
    help!!

  • signaler à un administrateur
    Commentaire de yvonig le 05/08/2005 15:24:20

    en plus quand j'essay de charger un image via form 1 : j'ai :

    Warning: move_uploaded_file(./img/logo.jpg): failed to open stream: No such file or directory in c:\program files\easyphp1-7\www\upload\upload.php on line 20

    Warning: move_uploaded_file(): Unable to move 'C:\Program Files\EasyPHP1-7\tmp\php49.tmp' to './img/logo.jpg' in c:\program files\easyphp1-7\www\upload\upload.php on line 20
    envoye terminé

    si tu avais une solution ?

  • signaler à un administrateur
    Commentaire de rottweiler le 05/08/2005 16:03:40

    oh la la toi tu es largué et tu avance dans l'inconu !!
    bon déjà à tu créer ton repertoire img en CHMOD  777
    ensuite au lieu de nous montrer tes error montre nous le code !
    tu as surement bouletté dans tes déclarations.

  • signaler à un administrateur
    Commentaire de yvonig le 05/08/2005 19:16:13

    c'est pas bien de se moquer mais t'as raison je suis largué...
    je voyais pas comment faire en local pour les droits sur les repertoires dans windows, alors j'ai tout mis chez ovh, mais toujours lmeme probleme à la ligne 20
    voila mon code (ou plutot ton code) :
    <?php
    //vos paramettre conection
    mysql_connect("sql6", "artcomedclick", "yvonig");
    //votre table
    mysql_select_db("images");
    //Permet de recupérer les valeurs envoyé de form1.php
    $ext =$_POST[ 'ext' ];
    $rename =$_POST[ 'rename' ];
    $titre =$_POST[ 'titre' ];
    $description =$_POST[ 'description' ];

    //newname voudra dire nom+ext qui arriverons du formulaire biensur ex:monchien/.gif
    $newname =($rename.$ext);

    //chemin voudra dire le chemin de deplacement de l'image (votre repertoire img que vous aurez creer bien sur
    $chemin = "./img/".$newname;
    //table voudra dire que c'est la table images ;) la vous avez compris loll
    $table = "images";
    // on balance la maneuvre
    move_uploaded_file($HTTP_POST_FILES["file"]["tmp_name"],$chemin);
    //et pour finir on même ca dans la base de donnée
    mysql_query("INSERT INTO $table (file, titre, description)  VALUES('$newname','$titre','description$');");
    echo 'envoye terminé ';
    ?>
    merci encore

  • signaler à un administrateur
    Commentaire de yvonig le 06/08/2005 01:37:47

    mille pardons...
    ca marche : j'avais mis le fichier img dans le mauvais repertoir...
    merci encore

  • signaler à un administrateur
    Commentaire de rottweiler le 06/08/2005 03:35:45

    OMG Déconne pas quand tu met un code évite de mettre tes login ;) tu fais flippé toi ;)

    content que tu y sois arrivé, à l'occase en message privé montre moi ton site j'aime bien voir ce qu'on fais de mes codes ;)

    par contre la je veux pas te faire peur mais tu est cher ovh et tu as fournis les login et passe à des millier de visiteurs change les vites maintenant.
    ...
    rott

  • signaler à un administrateur
    Commentaire de yvonig le 06/08/2005 15:51:41

    code changé mais pas de panique c'est un base de test...sinon j essaie de pouvoir proposer d'ouvrir les images en cliquant sur le titre et je n'y arrive pas :
    <?php
    //vos paramettre conection
    mysql_connect("", "", "");
    //votre base
    mysql_select_db("");

    // récupération des données de la table images
    $requete = "select * from images";
    $envoi = mysql_query($requete);
    while($tableau = mysql_fetch_array($envoi))
    {
    $id = $tableau['id'];
    $file = $tableau['file'];
    $titre = $tableau['titre'];
    $description = $tableau['description'];
    $chemin = "./img/".$tableau['file'];
    // affichage des données
    <a href="$chemin">$id $file $titre </a>";
    echo "$description<br>";
    }
    ?>
    un petit coup de pouce?

  • signaler à un administrateur
    Commentaire de yvonig le 06/08/2005 16:06:45

    en fait j'ai fini par trouver
    $affich="<a href=\"".$chemin."\">$titre</a>"; //lien
    echo $affich; //text du lien

  • signaler à un administrateur
    Commentaire de rottweiler le 06/08/2005 17:49:46

    c'était pas difficile il faut avant même que tu crèe la dynamique des donnés , savoir comment tu veux afficher une page ou les donnés en question.

  • signaler à un administrateur
    Commentaire de yvonig le 09/08/2005 10:42:20

    super ca marche, mais car il y a un mais, j'upload les images vers un repertoire au dessus de l'arborescence de mon site ( pour des raisons de securite ) et je ne vois pas comment je pourrai les afficher pour le visiteur ...
    une idée???

  • signaler à un administrateur
    Commentaire de rottweiler le 09/08/2005 11:59:54

    Tout dépandra de ce que tu veux en faire ?
    listing
    tableau (album photo)
    edition sur id (section membre)
    etc..

  • signaler à un administrateur
    Commentaire de yvonig le 09/08/2005 14:42:47

    c'est pour un espace membre individualisé utilisant les sessions, j'ai d'abord cherché à combiner session et .htaccess pour proteger les dossiers contenant les images, mais je n'ai pas trouvé de solutions pour que le visiteur ne rentre qu'une foi son mot de passe. mon idée maintenant c'est de faire l'upload des images au dessus de la racine du site et de les copier dans un dossier temporaire(à la racine) lorsque le visiteur veux les visiter et d'effacer le dossier lorsque le visiteur se delogue ou à intervalle regulier ou à je ne sais quel moment. les images sont en fait des docs relativements  confidentiels.
    Une idée serait la bien venue...merci

  • signaler à un administrateur
    Commentaire de rottweiler le 09/08/2005 15:53:57

    asigne l'ID du membre dans la table photo et a chaque action requete fais un check pour voir si le login et le pass de la session en court est bien = IDMembre de la photo!

    de plus si tu as une session tu peu largement verifier si la photo que tu affiche est asigné au membre de la session en court et donc lui autoriser des actions sur celle-ci.

  • signaler à un administrateur
    Commentaire de yvonig le 09/08/2005 17:25:50

    ca n'empechera pas quelqu'un d'acceder au fichiers par un lien direct?

  • signaler à un administrateur
    Commentaire de Blacknight91titi le 09/08/2005 18:07:21

    05/11/2002 => 09/08/2005
    On pourra pas dire que ta source aura servit a rien ^_^

    Blacknight

  • signaler à un administrateur
    Commentaire de rottweiler le 09/08/2005 18:27:14

    bein si tu code le nom du fichier le mec a meilleur interet à joué au loto :) , au moin il a une chance de galérer pour quelque chose :)


    oui Blacknight c'est vraix :)

  • signaler à un administrateur
    Commentaire de oki972 le 13/10/2005 19:13:17

    Salut à tous!
    J'ai un souci, php.ini limite la taille de l'upload a 2Mo, et limite le temps d'exécution d'un script à 30 secondes par défaut.
    Pour modifier la deuxieme valeur sans toucher a php.ini j'utilise set_time_limit(0); //pour illimité ou je mets une valeur en secondes.
    Est ce qu'il y aura d'apres vous une fonction identique qui permettrait d'augmenter la taille max de l'upload sans passer par le fichier meme php.ini.
    Cordialement !

  • signaler à un administrateur
    Commentaire de zecristof le 28/10/2005 23:07:55

    oki972 => tout dépend si tu es hébergé sur un serveur dédié ou pas. Si c'est le cas, vérifie que le serveur n'est pas en safe mode, auquel cas ton set_time_limit ne sera pas pris en considération ( a voir dans le httpd.conf sur apache ).

    Si tu est en mutu, les hébergeurs bloquent le safe_mode du serveur apache pour limiter les abus de script interminables et le mangeage de ressources. Là, mauvaise nouvelle, il n'y a pas de soluces à moins que tu sois bon pote avec ton admin serveur pour le débloquer.

    Sinon pour le script, j'ai eu qq soucis pour le mettre en place, il fonctionne très bien mais pour éviter les erreurs en mode test, je recommande dans un premier temps de mettre le $chemin à ../img pour en faire un chemin relatif plutôt que absolu. dans le cadre d'un test ( comme je l'ai fait ) si la racine du site n'est pas déclarée, le script plante. normal.

    A bon entendeur, bonne bourre.

  • signaler à un administrateur
    Commentaire de tatcrew le 10/11/2005 21:16:18

    Salut ton code m'interresse beaucoup, seulement j'ai un ch'tit bug, l'upload marche très bien mais quand je veu la regarder on me donne une erreur :forbidden, ils disent que je n'ai pas les authorisation pour voir l'image et impossible de la faire apparaitre par lien sur une page (si je la dl avec un logiciel ftp, l'image fonctionne sur mon pc)

    donc je m'interroge.

    Sinon bravo (enfin si quelqu'un trouve réponse a mon bug lol)

  • signaler à un administrateur
    Commentaire de tatcrew le 10/11/2005 23:31:12

    Je présise que j'ai bien appliquer le chmod 777 sur le dossier, et je viens de me rendre compte que les images uploader via le module on un chmod de 600.

    Donc je sais pas d'où vien le bugueu

  • signaler à un administrateur
    Commentaire de tatcrew le 11/11/2005 00:11:31

    c'est bon j'air résolu mon problème j'ai ajouter ceci vers la fin de la page upload.php

    chmod ($chemin, 0755);

  • signaler à un administrateur
    Commentaire de plume12 le 18/11/2005 11:55:44

    Merci bien, pour ma part tout fonctionne parfaitement, je vais essayer de modifier la taille des images pour éviter d'avoir des images mega grosses.
    Bonne journée

  • signaler à un administrateur
    Commentaire de Clinton92 le 25/11/2005 21:05:25

    J ai un gros probleme le script marcha a merveille en local mais quand je le met sur amen voila ce que ca me donne : merci d avance a tous

    Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/.sites/93/site37/web/uploadphoto.php on line 3

    Warning: mysql_select_db(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/.sites/93/site37/web/uploadphoto.php on line 5

    Warning: mysql_select_db(): A link to the server could not be established in /home/.sites/93/site37/web/uploadphoto.php on line 5

    Warning: mysql_query(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/.sites/93/site37/web/uploadphoto.php on line 29

    Warning: mysql_query(): A link to the server could not be established in /home/.sites/93/site37/web/uploadphoto.php on line 29

    Warning: Cannot modify header information - headers already sent by (output started at /home/.sites/93/site37/web/uploadphoto.php:3) in /home/.sites/93/site37/web/uploadphoto.php on line 30

  • signaler à un administrateur
    Commentaire de carabaas le 03/12/2005 23:43:07

    Salut tout le monde et surtout a rottweiler. Ton code est super, simple et tout et tout .
    Encore merci
    ++

  • signaler à un administrateur
    Commentaire de macmartygan le 30/01/2006 13:22:53

    salut rottweiler et tous les atres :)
    merci pour le code
    je debute en php (comme bien d autres) et je voudrais utiliser ce code ... je l ai remanier a mes besoins et cela donne :

    <?php

    if (isset($_POST['marque'])
    AND isset($_POST['model'])
    AND isset($_POST['cylindree'])
    AND isset($_POST['kilometres'])
    AND isset($_POST['porte'])
    AND isset($_POST['carburant'])
    AND isset($_POST['annee'])
    AND isset($_POST['type'])
    AND isset($_POST['prix'])
    AND isset($_POST['garantie'])
    AND isset($_POST['file'])
    AND isset($_POST['rename'])
    AND isset($_POST['ext'])) // Si les variables existent
    {
        if ($_POST['marque'] != NULL
    AND  $_POST['model'] != NULL
    AND $_POST['cylindree'] != NULL
    AND $_POST['kilometres'] != NULL
    AND $_POST['porte'] != NULL
    AND $_POST['carburant'] != NULL
    AND $_POST['annee'] != NULL
    AND $_POST['type'] != NULL
    AND $_POST['prix'] != NULL
    AND $_POST['garantie'] != NULL
    AND $_POST['file'] != NULL
    AND $_POST['rename'] != NULL
    AND $_POST['ext'] != NULL) // Si on a quelque chose à enregistrer
        {

          mysql_connect("", "", "");
                  mysql_select_db("");

        $marque = htmlentities ($_POST['marque']);
                $model = htmlentities ($_POST['model']);
                $cylindree = htmlentities ($_POST['cylindree']);
        $kilometres = htmlentities ($_POST['kilometres']);
        $porte = htmlentities ($_POST['porte']);
        $carburant = htmlentities ($_POST['carburant']);
        $annee = htmlentities ($_POST['annee']);
        $type = htmlentities ($_POST['type']);
        $prix = htmlentities ($_POST['prix']);
        $garantie = htmlentities ($_POST['garantie']);
        $rename=($_POST['rename']);
        $ext =($_POST['ext']);
        $newname =($rename.$ext);
        $chemin =('./img/'.$newname);   //Permet de recupérer les valeurs envoyé

    move_uploaded_file($HTTP_POST_FILES['file']['tmp_name'],$chemin);

        mysql_query("INSERT INTO occasions VALUES('','$marque','$model','$cylindree','$kilometres','$porte','$carburant','$annee','$type','$prix','$garantie','$newname')");
            mysql_close();
        }

    }
    ?>

    ( g viré titre et description )

    voila, ma bdd est bonne
    mais quan je lance la page j ai un prob.:

    Notice: Undefined index: file in c:\inetpub\wwwroot\garage rousseau\newocc.php on line 50

    la ligne 50 étant la ligne suivante :move_uploaded_file($HTTP_POST_FILES['file']['tmp_name'],$chemin);


    je continue a chercher sur cette page si la solusion a ete deja donnée présédament ...(au cas ou ...mais j ai du caca dans neneuil )

    merci a tous
    et encore merci pour le code

  • signaler à un administrateur
    Commentaire de bm3507 le 07/04/2006 15:00:53

    Suis novice et ça marche pô chez moi! sniff, qqun peut m'aider?
    mon erreur:


    Notice: Undefined variable: rename in c:\program files\easyphp1-8\www\upload\upload.php on line 7

    Notice: Undefined variable: ext in c:\program files\easyphp1-8\www\upload\upload.php on line 7

    Notice: Undefined index: file in c:\program files\easyphp1-8\www\upload\upload.php on line 13

    Notice: Undefined variable: titre in c:\program files\easyphp1-8\www\upload\upload.php on line 15

    Notice: Undefined variable: description in c:\program files\easyphp1-8\www\upload\upload.php on line 15
    envoye terminé


    mon code:

    <?php
    mysql_connect("localhost", "root", "");
    mysql_select_db("photo");
    $newname =($rename.$ext);
    $chemin = "./img/".$newname;
    $table = "images";
    move_uploaded_file($HTTP_POST_FILES["file"]["tmp_name"],$chemin);
    mysql_query("INSERT INTO $table (file, titre, description)  VALUES('$newname','$titre','$description');");
    echo 'envoye terminé ';
    ?>

    ma base de donnée s'appelle: upload et ma table photo


    merci à tous pour votre aide

  • signaler à un administrateur
    Commentaire de rottweiler le 10/05/2006 01:28:50

    c'est pourtant claire , une variable n'est pas définie ;)
    elle sont toute appelées au ligne d'error !
    regarde bien

  • signaler à un administrateur
    Commentaire de titze le 20/05/2006 01:42:22

    j'espère que je serez vu!

    Y a pas besoin de base de donnée...

    <form1.php> que j'ai transformer en <formulaire.html>

    <form enctype="multipart/form-data" method="post" action="../up/upload1.php">
      <div align="left">
        <p><br>
          Fichier:
          <input name="file" type="file" value="Choisissez l'image">
          <span class="Style27">Cliquer sur <strong>parcourir </strong>et choisissez l'image sur votre ordinateur    </span></p>
        <p> choisir un nouveau nom
          <input name="rename" type="text" value="1">
          <span class="Style28">Ne pas toucher &quot;1&quot; est le nom de l'image de la page n&deg;1      </span></p>
        <p>type :
          <label>
          <input name="ext" type="radio" value=".jpg" checked="checked" />
    jpeg</label>
          <span class="Style28">Ici c'est l'extension comme cela vous pouvez mettre tous types d'images</span></p>
        <p>
          <label></label>
          <input name="submit" type="submit" value="Envoyer" />
          <span class="Style28">Attention si votre image est grosse le temps d'attente sera long (environs 20 &agrave; 1 min !) </span><br>
          <label></label>
          <br>
        </p>
      </div>
    </form>

    <upload.php> toujours en <upload.php>

    <?php
    //newname voudra dire nom+ext qui arriverons du formulaire biensur ex:monchien/.gif
    $newname =($rename.$ext);
    //chemin voudra dire le chemin de deplacement de l'image (votre repertoire img que vous aurez creer
    $chemin = "../../image/site/".$newname;
    //table voudra dire que c'est la table images ;) la vous avez compris loll
    $table = "images";
    // on balance la maneuvre
    move_uploaded_file($HTTP_POST_FILES["file"]["tmp_name"],$chemin);
    //et pour finir on même ca dans la base de donnée
    echo 'envoye terminé', '<BR>';
    echo '<a href="../fond/fond.php">Retour</a>', '<BR>';
    ?>

    VOILA

  • signaler à un administrateur
    Commentaire de rottweiler le 20/05/2006 04:59:33

    généralement on propose des améliorations pas des diminution de code :) , autant passer par un logiciel ftp alors :)

  • signaler à un administrateur
    Commentaire de titze le 20/05/2006 11:20:17

    Non parceque le site permet de mettre des image on-line et donner le FTP n'est pas du tout conseillé.
    En effet, mais tu as dit plus haut que l'originilité de ton script tenait sur 10 lignes.
    Moi, il tient vraiment par 10 ligne, de plus tout le monde n'a pas de base de données ou les débutant n'ont pas envie de fouiller dans les script, celui-ci marche direct...

    Mais bon ca depend ce que l'on veut en faire. de plus a quoi sert la base de donnée dans un upload?!

  • signaler à un administrateur
    Commentaire de rottweiler le 20/05/2006 13:45:18

    La base de donnée, elle sert par exemple à faire des scripts comme celui qui nous utilisons actuellement pour discuter (tu crois que nix ajoute ton avatar à la main à gauche de ton texte ;) ? ) , quand tu vois des news sur un site il y a une base de donnée derrière, c'est le béaba de tout site dit dynamique! le meilleur exemple est un album photo dynamique etc.

    Ce code est une bonne base pour faire la main au débutant mais pour un site pro il faut scripts plus élaborés ! Dès que j'ai 1 heure devant moi et un peu de courage, je ferais un script capable de tout faire sur une image ! Tu verras l'intérêt d'une base de données :)
    Tiens un autre exemple imagine que tu gère un commerce en ligne de disque

    Tu va créer une base de données avec tous tes champs et bien sur pour que les pochettes s’affichent automatiquement à chaque référence de disque il faut que la table sache quel disque est associé à quelle image (et c'est la que la base de donnée va te servire)!

  • signaler à un administrateur
    Commentaire de titze le 20/05/2006 20:11:17

    Merci de ta reponse et toujours de ton travail!!!

    Mais tu n'a pas répondu a ma question qui était:
    A quoi sert la base de donnée dans un UPLOAD sinon oui je sais  a quoi sert dans le reste...

    Bon bah bonne soirée

  • signaler à un administrateur
    Commentaire de Padaone91 le 28/07/2006 14:33:35

    Bonjour à tous,

    Franchement root il est nickel ton php !!! Par contre j'ai une question (je suis une bille en php), comment peut on afficher les images sur une page web tout en les liant à leurs commentaires respectifs ?
    Parce que j'ai réussi à afficher toutes les images du dossier img mais les commentaires et autres infos déposées dans la base de donnée ne sont pas affichées au bon endroit.

    Help i need somebody...

    Merci

  • signaler à un administrateur
    Commentaire de rottweiler le 28/07/2006 15:25:02

    etudit les requetes avec SELECT c'est la base du php

  • signaler à un administrateur
    Commentaire de ertyskipass le 01/08/2006 14:20:24

    Notice: Undefined variable: rename in c:\program files\easyphp1-8\www\developpement\phpcs_source_13038\upload.php on line 7

    Notice: Undefined variable: ext in c:\program files\easyphp1-8\www\developpement\phpcs_source_13038\upload.php on line 7

    Notice: Undefined variable: titre in c:\program files\easyphp1-8\www\developpement\phpcs_source_13038\upload.php on line 15
    envoye terminé

    super ca marche ce script

  • signaler à un administrateur
    Commentaire de ertyskipass le 01/08/2006 14:26:19

    mes variables sont indefinies