IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

CRUD _ problème UPDATE


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Juin 2024
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique

    Informations forums :
    Inscription : Juin 2024
    Messages : 3
    Points : 4
    Points
    4
    Par défaut CRUD _ problème UPDATE
    Bonsoir tout le monde,
    j ai refais un exemple sur internet , problème comme suite:
    pour la modification des informations d'un produit un message d'erreur est apparu quand je clique sur le lien modifier et un message d'erreur a l intérieur de mon input
    "<br /><b>Warning</b>: Trying to access array offset on value of type bool in <b>C:\xampp\htdocs\projects\php5\modifier.php</b> on line <b>11</b><br />

    voici les capture d'ecran

    Nom : 1.png
Affichages : 78
Taille : 101,3 Ko
    puis
    Nom : 2.png
Affichages : 61
Taille : 122,8 Ko
    puis
    Nom : 3.png
Affichages : 63
Taille : 110,0 Ko
    puis
    Nom : 4.png
Affichages : 65
Taille : 132,7 Ko
    pour le code

    index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
     
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>php5</title>
     
        <style>
            input{
                margin-bottom: 15px;
            }
        </style>
    </head>
    <body>
        <!-- créer formulaire -->
     
        <form action="" method="post">
            <label for="">Nom de produit</label><input type="text" name="nom" autocomplete="off"><br>
            <label for="">Prix</label><input type="text" name="prix" autocomplete="off"><br>
            <label for="">Quantité</label><input type="number" name="quantite" min="1" autocomplete="off"><br>
            <button type="submit" name="enregistrer">Enregistrer</button>
     
        </form>
    </body>
    </html>
     <!-- créer connexion pour transmettre les information au BD -->
     
     <?php
     require_once("connect.php");
     if(isset($_POST['enregistrer']))
     {
        $nom=$_POST['nom'];
        $prix=$_POST['prix'];
        $quantite=$_POST['quantite'];
    if(!empty($nom) AND !empty($prix) AND !empty($quantite)){
    if(strlen($nom)<5){
        echo "cinque caracteres minimum";
    } else {
        $req=$con->prepare("INSERT INTO produit(nomproduit, prix, quantite) VALUES (?,?,?)");
        $req->execute(array($nom, $prix, $quantite));
      if($req){   header("location: afficher.php");
      }
    }
    }else {echo "rempli tt champs";}
     }
     ?>
    et

    connect.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?php
     
    try{
    $con=new PDO("mysql:localhost=localhost; dbname=php5", "root","");
    $con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    }catch(PDOException $e){
        echo "défaut de connexion".$e->getMessage();
    }
    //pour tester la connexion ecrir la ligne suivante;
    // if($con){ echo "connecxion réussite" ;}
     
    ?>
    afficher.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>afficher</title>
        <h4>afficher nos produits</h4>
    </head>
    <style>
    table{
        border: 2px solid blue;
    }
    td, th{ border: 1px solid red;
        border-collapse: collapse;
     
    }
     
    </style>
    <body>
     
        <table>
     
        <th>ID</th>
        <th>nom produit</th>
        <th>prix</th>
        <th>Quantite</th>
        <th>action</th>
     
     
        <?php
    require_once("connect.php");
    $req=$con->query("SELECT * FROM produit");
    while($aff=$req->fetch()){?>
     
    <tr>
    <td><?php echo $aff['id'];?></td>
    <td><?php echo $aff['nomproduit'];?></td>
    <td><?php echo $aff['prix'];?></td>
    <td><?php echo $aff['quantite'];?></td>
        <td>
            <a href="modifier.php?id=<?php echo $aff['id']?>">Modifier</a>
            <a href="supprimer.php?id=<?php echo $aff['id']?>">supprimer</a>
        </td>
    </tr>
     
    <?php }?>
        </table>
    </body>
    </html>
    supprimer.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    require_once("connect.php");
    if(isset($_GET["id"])){
        $id=$_GET["id"];
        $req=$con->prepare("DELETE FROM produit where id= ?");
        $req->execute(array($id));
        if($req){
          header("location: afficher.php");
        }
    }
     
     
    ?>
    modifier.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    <?php
    require_once("connect.php");
    if(isset($_GET['id'])){
        $id=$_GET['id'];
        $req=$con->prepare("SELECT * FROM produit where id= $id");
        $mod=$req->fetch();
    }?>
       <h2>modification produit</h2>
     
    <form action="" method="post">
    <label for="">Nom de produit</label><input value="<?php echo $mod['nomproduit'];?>" type="text" name="nom" autocomplete="off"><br>
            <label for="">Prix</label><input value="<?php echo $mod['prix'];?>" type="text" name="prix" autocomplete="off"><br>
            <label for="">Quantité</label><input value="<?php echo $mod['quantite'];?>" type="number" name="quantite" min="1" autocomplete="off"><br>
            <button type="submit" name="modifier">Enregistrer Modification</button>
     
        </form>
     
     
        <?php 
    if(isset($_POST['modifier']))
    {
        $nom=$_POST['nom'];
        $prix=$_POST['prix'];
        $quantite=$_POST['quantite'];
        $req=$con->prepare("UPDATE produit SET nomproduit=?, prix=?, quantite=? where id=$id");
        $req->execute(array($nom, $prix, $quantite));
        if($req){
            header("location:afficher.php");
        }
     
    }
        ?>
    le souci est dans modifier.php
    non seulement quand je clique sur "modifier" DANS le tableau d'affichage globale , le formulaire de modification ne recupere pas les valeurs du produit souhaité modifier plus le message affiche a l'interieur de mon input !!!!!!!!!!!
    peut etre probleme id ????
    dans l'attente de vos orientation, merci d'avance et agreable soirée

  2. #2
    Candidat au Club
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Juin 2024
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique

    Informations forums :
    Inscription : Juin 2024
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    bonjour tout le monde
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
     
    <?php
    require_once("connect.php");
    if(isset($_GET['id'])){
        $id=$_GET['id'];
        $req=$con->prepare("SELECT * FROM produit where id= ?");
        $req->execute([$id]);
        $mod=$req->fetch();
    }?>
       <h2>modification produit</h2>
     
    <form action="" method="post">
    <label for="">Nom de produit</label><input value="<?php echo $mod['nomproduit'];?>" type="text" name="nom" autocomplete="off"><br>
            <label for="">Prix</label><input value="<?php echo $mod['prix'];?>" type="text" name="prix" autocomplete="off"><br>
            <label for="">Quantité</label><input value="<?php echo $mod['quantite'];?>" type="number" name="quantite" min="1" autocomplete="off"><br>
            <button type="submit" name="modifier">Enregistrer Modification</button>
     
        </form>
     
     
        <?php 
    if(isset($_POST['modifier']))
    {
        $nom=$_POST['nom'];
        $prix=$_POST['prix'];
        $quantite=$_POST['quantite'];
        $req=$con->prepare("UPDATE produit SET nomproduit=?, prix=?, quantite=? where id=$id");
        $req->execute(array($nom, $prix, $quantite));
        if($req){
            header("location:afficher.php");
        }
     
    }
        ?>
    Finalement j'ai essayé de modifier la ligne 7, mettre ? au lieu de id et ajouter la ligne 8 par rapport au code déjà posté en premier
    Je vais continuer à tester
    merci à vous tous
    agréable journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] CRUD(create read update ans delete )
    Par Taneyem dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 21/01/2023, 12h17
  2. [PDO] Update dans le CRUD. variable non définie
    Par dancom5 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 10/10/2015, 22h43
  3. CRUD Android SDK / SQLite / Java : update()
    Par en_dehors dans le forum Android
    Réponses: 9
    Dernier message: 10/11/2014, 17h21
  4. [Débutant] Insert, Update, Search and Delete (CRUD operation) with SharePoint 2013 using VS 2012
    Par siffon dans le forum Développement Sharepoint
    Réponses: 2
    Dernier message: 17/02/2014, 12h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo