FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » [RESOLU] [PHP] Automatisation des saisies et insertion de texte
 

[RESOLU] [PHP] Automatisation des saisies et insertion de texte

Il y a 268 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : [RESOLU] [PHP] Automatisation des saisies et insertion de texte
 
85x85 : le comble du ridicule :o
Plus d'informations

Bonjour,
Je sais que j'aurais besoin de php et MySQL pour mon projet.
Dans le cadre de création d'un site pour une asso sportive, j'ai besoin de prévoir un moyen de faire des ajouts réguliers de texte et d'images au fur et à mesure des manifestations sportives. Ca ne poserait pas de probleme si j'en étais le seul utilisateur. Seulement voilà, la personne qui s'en occupera le plus souvent n'y connais rien en html. Je dois donc lui proposer une interface simple pour la saisie des mises à jour.
J'ai besoin que l'interface se compose d'un champ texte et d'un bouton valider pour la saisie du texte, d'un champ texte, d'un bouton parcourir et un bouton valider pour l'insertion d'images. Le tout doit pouvoir se retrouver instantanément en ligne une fois validé.
Je suis conscient que tout ceci dépasse mes maigres connaissances en html, css et php. Je sais que je dois me mettre au MySQL (j'ai déjà commencé d'ailleurs), mais j'aurais besoin de pistes de recherches et surtout de savoir si je ne suis pas un peu trop ambitieux vu mon niveau.
Il est hors de question que quelqu'un le fasse à ma place, je veux apprendre et surtout le faire par moi-même. Je viens juste chercher un peu de soutien moral et surtout des conseils constructifs.


Message édité par dartyduck le 27-02-2007 à 10:46:07

---------------
GLOIRE A :o | Trompi PPC-IDN
n00b intergalactique invincible :o
MEMBRE DU GROUPUSCULE DES AVATARS EN COLERE [:dartyduck:6]

Plus d'informations

C'est simple :  
 
Ton formulaire  

Code :
  1. <form method="POST" action="tapage.php" enctype="multipart/form-data">
  2. <input type="text" name="texte">
  3. <input type="file" name="fichier">
  4. <input type="submit" value="Valider">
  5. </form>
  6. <?php
  7. if(isset($_POST['texte']))
  8.     {
  9.      $fichier = $_FILES['fichier']['name'];
  10.      $texte = $_POST['texte'];
  11.      $destination_fichier = "images/$fichier";
  12.      if(move_uploaded_file($_FILES['fichier']['tmp_name'], $destination_fichier))
  13.              {
  14.               $sql = mysql_query("INSERT INTO truc VALUES...." );
  15.              }
  16.     }
  17. ?>


Ca devrait ressembler a un truc comme ca, si tu es flegmard oubli la programmation :)


Message édité par Thomas_R le 23-02-2007 à 13:23:31
zeb
Profil : Modérateur libre
Plus d'informations

( Thomas_R, même si tu es flemmard, vas lire les règles et applique-les ! )  :jap:


Message édité par zeb le 24-02-2007 à 00:41:10
Plus d'informations

En l'occurence pour un flegmard je prends quand meme la peine de répondre à sa question. Alors heureuse ?:)

85x85 : le comble du ridicule :o
Plus d'informations

d'accord, c'est cool de ta part. mais comment je précise l'emplacement de destination ? les maj vont se mettre à les suite les unes des autres ? dans quel ordre? (du plus récent au plus ancien) Comment vont s'intégrer les images dans le texte ? Je testerai tout ça ce soir pour me faire une idée du résultat...
Merci encore.


---------------
GLOIRE A :o | Trompi PPC-IDN
n00b intergalactique invincible :o
MEMBRE DU GROUPUSCULE DES AVATARS EN COLERE [:dartyduck:6]
Plus d'informations

Regardes dans mon code tu as une variable $destination, elle correspond à là où tu vas enregistrer l'image.  

Citation :

Les maj vont se mettre à la suite les unes des autres ?

?? euuh quoi ??
Je viens de t'envoyer un script qui te permet d'envoyer tes mises à jour sur le serveur. Sachant que pour que le script fonctionne bien il faut que le php.ini du serveur accepte des transactions de fichiers par le protocole Http. (Chez free, 2mégaoctets maximum).
 
Sinon tu peux les envoyer directement sur ton FTP.. et les afficher à l'arrache comme ceci :

Code :
  1. $rep="mises_a_jour/"; //ton dossier ou ya les maj
  2. $dir = opendir($rep);
  3. while($fichier = readdir($dir))
  4.     {
  5.     echo "<a href='$rep.$fichier'>$fichier</a><br>";
  6.     }
  7. closedir();


Avec ca tu as largement les outils nécessaires à ta conception
L'intégration des images et tout ca c'est toi qui voit, on va pas te faire le design ^^


Message édité par Thomas_R le 23-02-2007 à 14:07:08
Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

:D
 
Il faut dire à DartyDuck que ton script permet "juste" l'enregistrement des infos. Pour l'affichage il faut faire un autre script avec une requête vers MySQL pour récupérer les infos et les classer ;)


---------------
.: La Pipicy Team :love: :.
Plus d'informations

Oui c'est vrai merci, je suis pas très pédagogue :)

85x85 : le comble du ridicule :o
Plus d'informations

wai, je suis justement en train de le faire. ca marche bien pour le texte, mais pas du tout pour l'image. J'arrive pas à trouver la bonne syntaxe de l'echo "<img src=... pour afficher une image importée. Voici mon code pour l'affichage:

Code :
  1. <?php
  2. echo "<img src=\"$chemin_image\" />";
  3. ?>


En fait, ce que je veux faire, c'est aller chercher l'image (parcourir...), et lors de la validation, il copie l'image dans un répertoire créé par moi, puis l'affiche à l'écran.
Alors je sais pas comment copier un ficher vers un repertoire, ni trouver la syntaxe pour l'afficher.
Merci


Message édité par dartyduck le 23-02-2007 à 22:17:04

---------------
GLOIRE A :o | Trompi PPC-IDN
n00b intergalactique invincible :o
MEMBRE DU GROUPUSCULE DES AVATARS EN COLERE [:dartyduck:6]
Plus d'informations

Oui et c'est exactement ce que j'ai fait dans mon premier mesage, celui ci :
Tu as juste a rajouter un echo...tu crois que je m'amuse a poster du code qui sert a rien ^^
En haut tu as ton formulaire, avec le bouton parcourir (<input type='file'> )
Ensuite j'enregistre l'image avec la fonction move_uploaded_file();
Et finalement j'affiche l'image..
 
Ton formulaire  

Code :
  1. <form method="POST" action="tapage.php" enctype="multipart/form-data">
  2. <input type="text" name="texte">
  3. <input type="file" name="fichier">
  4. <input type="submit" value="Valider">
  5. </form>
  6. <?php
  7. if(isset($_POST['texte']))
  8.     {
  9.      $fichier = $_FILES['fichier']['name'];
  10.      $texte = $_POST['texte'];
  11.      $destination_fichier = "images/$fichier";
  12.      if(move_uploaded_file($_FILES['fichier']['tmp_name'], $destination_fichier))
  13.              {
  14.               echo "<img src='$destination_fichier'>";
  15.              }
  16.     }
  17. ?>


Oubli pas de changer le nom du dossier, pour cela tu changes la variable $destination_fichier, bon courage. Je pense que ce topic peut passer résolu.  
Pour plus d'infos renseigne toi sur la fonction move_uploaded_file();


Message édité par Thomas_R le 24-02-2007 à 17:17:03
85x85 : le comble du ridicule :o
Plus d'informations

bon alors ok pour ton message, mais j'ai plusieurs problemes qui se présentent:
1- Comment ajouter les messages sans qu'ils s'écrasent ?
2- Comment uploader une image, la copier dans le rép images et en même temps la faire s'afficher? Ca marche pas ton truc. Il me met une croix de non-image. Pourtant j'ai activé MySQL depuis longtemps.
 
J'arrive pas à me représenter comment il incrémente les messages pour les ajouter à la suite, le cheminement logique de cette action m'échappe. Pourrais-tu m'éclairer ?


---------------
GLOIRE A :o | Trompi PPC-IDN
n00b intergalactique invincible :o
MEMBRE DU GROUPUSCULE DES AVATARS EN COLERE [:dartyduck:6]
Plus d'informations

1 - Il faut que tu mettes un id a tes messages dans ta base de données donc tu créé un champ id et tu le mets en auto increment.
2 - Oulah .. tu mélanges tout la, mon script marche très bien, mais c'est pas en faisant un copier coller que tout fonctionne, je ne pense pas que ta page soit dans un dossier qui contient un dossier images/. Et je vois pas le rapport avec la base de données.
 
C'est relativement simple, dans un exemple concret, chaque personne est identifiable par un identifiant unique, son ADN ou ses empreintes digitales. Si un jour quelqu'un doit trouver telles empreintes il n'aura qu'une seule personne a trouver.
 
Pour tes messages c'est pareil tu vas leur donner un identifiant, un nombre, a chaque fois que tu vas ajouter un message ce nombre va augmenter de 1. Ton premier message aura l'id 1, ton deuxieme 2 etc..
 

85x85 : le comble du ridicule :o
Plus d'informations

oulà! ok ok! tout s'esplique ! bon alors avec tout ca, je devrait pouvoir m'y retrouver je pense. merci, je me penche dessus dès que j'ai un peu de temps.
Je te tiens au courant. A +


---------------
GLOIRE A :o | Trompi PPC-IDN
n00b intergalactique invincible :o
MEMBRE DU GROUPUSCULE DES AVATARS EN COLERE [:dartyduck:6]
85x85 : le comble du ridicule :o
Plus d'informations

Alors pour ce qui est de mettre des infos genre news, c'est bon, j'ai pris des cours sur le site du zéro, et ça marche. Cependant, une fois que la saisie a été validée et affichée, si je fais juste F5 elle est doublée, re-F5 elle est triplée, ... Pourquoi ?

Code :
  1. <div id="formulaire">
  2. <?php
  3. if (isset($_POST['prenom']) AND isset($_POST['pseudo'])) // Si les variables existent
  4. {
  5.     if ($_POST['prenom'] != NULL AND $_POST['pseudo'] != NULL) // Si on a quelque chose à enregistrer
  6.     {
  7.         // D'abord, on se connecte à MySQL
  8.         mysql_connect("localhost", "dirtyduck", "passwd" );
  9.         mysql_select_db("sondage_prenom" );
  10.         // On utilise la fonction PHP htmlentities pour éviter d'enregistrer du code HTML dans la table
  11.         $prenom = htmlentities ($_POST['prenom']);
  12.         $pseudo = htmlentities ($_POST['pseudo']);
  13.         // Ensuite on enregistre le message
  14.         mysql_query("INSERT INTO sondage_prenom VALUES('', '$prenom', '$pseudo')" );
  15.         // On se déconnecte de MySQL
  16.         mysql_close();
  17.     }
  18. }
  19. ?>
  20. <form action="index.php" method="post">
  21. <p>
  22. Proposez un prénom :<br /><input type="text" name="prenom" size="20" />
  23. <p>&nbsp;</p>
  24. Entrez votre pseudo :<br /><input type="text" name="pseudo" size="20" />
  25. <p>&nbsp;</p>
  26. <input type="submit" value="Envoyer" />
  27. </p>
  28. </form>
  29. </div>
  30. <div id="prenoms">
  31. <p>Voici les propositions :</p>
  32. <p>&nbsp;</p>
  33. <?php
  34. // Maintenant on doit récupérer les entrées de la table
  35. // On se connecte d'abord à MySQL :
  36. mysql_connect("localhost", "dirtyduck", "passwd" );
  37. mysql_select_db("sondage_prenom" );
  38. // On utilise la requête suivante pour récupérer les messages :
  39. $reponse = mysql_query("SELECT * FROM sondage_prenom ORDER BY ID DESC" );
  40. // On se déconnecte de MySQL
  41. mysql_close();
  42. // Puis on fait une boucle pour afficher tous les résultats :
  43. while ($donnees = mysql_fetch_array($reponse) )
  44. {
  45. ?>
  46. <?php echo $donnees['pseudo']; ?> propose : <strong><?php echo $donnees['prenom']; ?></strong><br />
  47. <?php
  48. }
  49. // Fin de la boucle, le script est terminé !
  50. ?>
  51. </div>


Message édité par dartyduck le 25-02-2007 à 19:30:37

---------------
GLOIRE A :o | Trompi PPC-IDN
n00b intergalactique invincible :o
MEMBRE DU GROUPUSCULE DES AVATARS EN COLERE [:dartyduck:6]
Plus d'informations

Simplement parce que si tu rafraichis ta page tu renvoie les valeurs au navigateur (les valeur POST). En fait tu rafraichis carement ton script d'envoi d'une news.. ce qui est tout a fait normal, après ton insertion tu n'as qu'a faire une redirection :

Code :
  1. header("location:tapage.php" );


ou comme ceci

Code :
  1. <META HTTP-EQUIV="refresh" CONTENT="3; URL=tapage.php">


 
Pas d'inquiétudes alors :)
Si tu n'as toujours pas compris appuis sur F6 ca devrait résoudre ton problem :D
Mets le topic en RESOLU STP


Message édité par Thomas_R le 26-02-2007 à 13:28:02

Aller à :
Ajouter une réponse
  FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » [RESOLU] [PHP] Automatisation des saisies et insertion de texte
 

Annonces Google
Publicité
Les ressources relatives