Zone texte

Fermé
Fragtal Messages postés 27 Date d'inscription jeudi 12 septembre 2013 Statut Membre Dernière intervention 21 mai 2018 - Modifié le 13 mai 2018 à 16:37
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 - 21 mai 2018 à 21:48
Bonjour
Alors voila dans ma base données j'ai un tableau qui contient plusieurs colonne le prix le nom des plantes ... j'ai aussi une zone de texte et je voudrais la mettre sur ma page web en php je voudrais pouvoir y écrire des choses et que lorsque je clique sur un bouton ou que je rafraîchis la page sa sincrémente dans ma base de données voila merci .

3 réponses

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
13 mai 2018 à 18:45
Bonjour,

- Avec quoi connectes tu ta bdd ? PDO ou mysqli ?
- Sais tu faire des formulaires HTML ?
- Sais tu faire des requêtes SQL ( SELECT ou UPDATE ) ?
- Qu'as tu commencé à faire ?
- Quelle est la structure de ta table ?
- Site web réalisé par toi ou à l'aide d'un cms comme wordpress par exemple ?


Merci de répondre à TOUTES les questions si tu souhaites obtenir de l'aide.

1
Fragtal Messages postés 27 Date d'inscription jeudi 12 septembre 2013 Statut Membre Dernière intervention 21 mai 2018
13 mai 2018 à 18:56
Bonjour
-Je suis sous WAMPserver (phpmyadmin) du coup mes requêtes sont on sql
-je sais en faire quelque une oui
-j'ai fais ma base de données et ma page d'insertion
-Ma table posséde un une colonne ID Nom Prix Stock Text et code barres
-Page web réaliser par moi
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
13 mai 2018 à 19:06
Tu as oublié :
Avec quoi connectes tu ta bdd ? PDO ou mysqli ?


Donc :
1 - Connexion à ta bdd en utilisant pdo ou myslqi
2 - Pour lister : requête de type SELECT

Ensuite, plusieurs façons de faire :
Solution basique :
Ouverture d'un formulaire HTML
Boucle sur le résultat de la requête pour générer l'affichage... dans un tableau html par exemple
( les champs modifiables seront à base d'input text par exemple )
Ajout d'un bouton SUBMIT
Fermeture du formulaire HTML

Lors du "submit" du formulaire, récupération des champs remplis/modifiés (boucle pour les parcourir... )
Requête UPDATE pour mettre à jour en BDD


deuxième solution:
Affichage des infos (dans un tableau par exemple )
Un bouton "modifier" en regarde de chaque ligne. (sous forme de "lien" contenant l' ID de l'élément à modifier. )
Si on clique sur une ligne, ouverture d'une fenêtre contenant un formulaire avec les champs modifiables. La encore, requête UPDATE après submit du formulaire.

Troisième solution
Utilisation d'AJAX.
On affiche les données ... on mets des champs input pour les champs modifiables.
La différence se trouvant dans le fait qu'on a pas besoin de formulaire....
A chaque "modification" d'une valeur dans le tableau, un script Javascript fait appel (en ajax) à un script PHP qui fait un UPDATE dans la bdd.
=> Voir ici des exemples en ajax avec jquery : https://codes-sources.commentcamarche.net/source/102253-exemple-ajax-en-jquery
0
Fragtal Messages postés 27 Date d'inscription jeudi 12 septembre 2013 Statut Membre Dernière intervention 21 mai 2018
13 mai 2018 à 19:28
c'est on pdo et la premiére technique me semble bien
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > Fragtal Messages postés 27 Date d'inscription jeudi 12 septembre 2013 Statut Membre Dernière intervention 21 mai 2018
13 mai 2018 à 19:52
exemple soluction 1
<?php
//affichage des erreurs php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

//connexion à la bdd
require_once "tonfichierdeconnexionatabdd.php"


//recupération des données dans la table
$sql = "SELECT * FROM taTable";
try{
   $prepare = $bdd->prepare($sql);
   $prepare->execute();
   //on stocke le resultat de la requete dans un array
   $result = $prepare->fetchAll();
}catch(Exception $e){
  echo 'erreur '.$e->getMessage();
}

// si des données sont envoyées via le submit
if(isset($_POST['valider'])){
  print_r($_POST);
  //ici tu dois coder la récupération des données.... et l'envoie en bdd
  
   /**
   // code à completer ..
   $sql = "UPDATE tatable
             SET tonchamp = :lavalue1
                 ,tonchamp2 = :lavalue2
                 //etc...
             WHERE id = $id";  
   $datas = array(':lavalue1'=>$lavalue1, ':lavalue2'=>$lavalue1 etc..);             
   try{
      $prepare = $bdd->prepare($sql);
      $prepare->execute($datas);
  }catch(Exception $e){
    echo 'erreur '.$e->getMessage();
  }          
  */
}

?>

<form name="myform" action="" method="post">
<table>
<?php
  if(!empty($result )){
    foreach($result  as $i=>$R){
      echo "<tr>";
        foreach($R as $col=>$value){
          echo "<td>";
          echo "<input type='text' name='".$col."['".$i."']' value='$value'>";
          echo "</td>";
        }
      echo "</tr>";
    }
  }
?>
</table>
<input type="submit" value="valider" name="valider">
</form>
0
Fragtal Messages postés 27 Date d'inscription jeudi 12 septembre 2013 Statut Membre Dernière intervention 21 mai 2018
13 mai 2018 à 20:44
Mercii :)
A la place de lavalue1 et lavalue2 je met quoi?
0
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
13 mai 2018 à 19:13
bonjour, cela me semble largement chevaucher une autre discussion: https://forums.commentcamarche.net/forum/affich-35361527-probleme-concernant-ma-base-de-donnees
0
Fragtal Messages postés 27 Date d'inscription jeudi 12 septembre 2013 Statut Membre Dernière intervention 21 mai 2018
14 mai 2018 à 23:37




Voici ce que maffiche la page web quand je la lance :
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
14 mai 2018 à 23:50
Tu dois utiliser le code que je t'ai donné.... avec le formulaire et les input !
Tu dois mettre un print_r($_POST); au début du fichier
Tu testes ton formulaire.... et tu nous indiques ce que donnes ton print.
0
Fragtal Messages postés 27 Date d'inscription jeudi 12 septembre 2013 Statut Membre Dernière intervention 21 mai 2018
21 mai 2018 à 19:51
Bonjour,
j'ai essayer je n'y arrive pas ,Je n'y arrive pas
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
21 mai 2018 à 21:48
Tu n'arrives pas à quoi ?
Qu'as tu essayé ?
Qu'obtiens tu ?
Tu as mis le print_r comme je te l'ai demandé ? Où ça ? Montre ton code
0