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 :

Update avec Mysqli


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Dut informatique
    Inscrit en
    Février 2014
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dut informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 20
    Par défaut Update avec Mysqli
    Bonjour J'ai un souci lorsque que je veux mettre à jour un objet dans ma base de données à partir des informations du formulaires :

    formulaire :
    Code html : 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
    <html>
    <head>
    	<title>Remplir données photos</title>
    	<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
    <body>
    	Veuillez entrer les données de la photo :
    	<form methode="GET" action="RemplissageAdministrateur.php"><br/>
    		Type : <input value = "Photo" name = "type" ><br/>
    		Numéro fichier : <input type ="number" name = "num" ><br/>	
    		Titre : <input type="text" name="titre" ><br/>
    		Sujet : <input type="text" name="sujet" ><br/>
    		Keywords : <input type="text" name="keywords" ><br/>
    		Description : <input type="text" name="description" ><br/>
    		Provenance : <input type="text" name="provenance" ><br/>
    		Droits : <input type="text" name="droits" ><br/>
    		<input type="Submit" name="Valider" value="Valider"/>
    	</form>
    </body>
    </head>
    </html>



    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
    $c = mysqli_connect($server,$nomUser,$password,$nomBD) or die("Erreur lors du choix de la base de donnée");
    //mysql_select_db($nomBD) or die("Erreur lors du choix de la base de donnée");
     
    $type = $_GET['type'];
    $num = $_GET['num'];
     
    switch($type){
    //Traitement des photos
    	case "Photo" :
    	$titre=$_GET['titre'];
    	$sujet=$_GET['sujet'];
    	$keywords=$_GET['keywords'];
    	$description=$_GET['description'];
    	$provenance=$_GET['provenance'];
    	$droits=$_GET['droits'];
     
    	$query ="UPDATE `cai2015`.`photos` SET `titre` = '$titre', `sujet` = '$sujet', `keywords` = '$keywords', `description` = '$description', `provenance` = '$provenance', `droits` = '$droits' WHERE `photos`.`numPhoto` = $num;";
    	echo($keywords);
     
    	$resultat = $c->query($query) or die ('Erreur a l\'insertion'); ;
     
    	break;

    Voila les codes la connexion se fait correctement un simple SELECT du style $query ="SELECT * FROM `photos` WHERE numPhoto =1;"; marche très bien un UPDATE avec des valeurs que j'écris directement aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    query ="UPDATE `cai2015`.`photos` SET `titre` = 'a', `sujet` = 'a', `keywords` = 'a', `description` = 'a', `provenance` = 'b', `droits` = 'd' WHERE `photos`.`numPhoto` = 1;";
    Bref je ne comprends pas comment résoudre cela
    Cordialement
    Merci d'avance de votre aide.

  2. #2
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 133
    Par défaut
    Salut,

    Tout d'abord, pour trouver ton erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (!$c->error) {
       printf("Errormessage: %s\n", $c->error);
    }
    Ensuite, regarde de ce côté là :

    http://php.net/manual/fr/mysqli.prepare.php

    Ce lien est important et tu devrais adopter le prepare au plus vite ^^.

    Joyeux Noël !

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <form methode="GET" action="RemplissageAdministrateur.php">
    D'où sort ce curieux attribut methode ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Membre averti
    Homme Profil pro
    Dut informatique
    Inscrit en
    Février 2014
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dut informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 20
    Par défaut
    Parse error: syntax error, unexpected ',' line 37
    voici l'erreur que j'ai avec ce que $c->error
    et le methode="GET" j'utilise ce que je connais pour récupérer les informations d'un formulaire mais je peux surement faire mal je connais juste les bases en html php

  5. #5
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 133
    Par défaut
    Lol Bovino te faisais remarquer que tu as utilisé l'attribut methode au lieu de method.

  6. #6
    Membre averti
    Homme Profil pro
    Dut informatique
    Inscrit en
    Février 2014
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dut informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 20
    Par défaut
    Ahah ok merci j'avais vraiment pas capté surtout que ça marche c'est le français qui ressort ^^

Discussions similaires

  1. [MySQL] php/mysqli UPDATE avec jointure
    Par lvdesign dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 13/08/2014, 14h48
  2. UPDATE avec des variables Delphi ...
    Par Kokito dans le forum Bases de données
    Réponses: 3
    Dernier message: 08/03/2004, 22h35
  3. Requete d'update avec concatenation !!
    Par chris92 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 25/02/2004, 12h05
  4. [version] Requete Update avec différentes versions de mySQL
    Par regbegpower dans le forum Requêtes
    Réponses: 2
    Dernier message: 26/01/2004, 17h19
  5. Pb Update avec chaine de caractere
    Par JuJu° dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 28/05/2003, 15h58

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