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 !

Sujet : Derniere erreur et ca risque de marcher... [ Divers / Débutant(e) ] (slhuilli)

mardi 4 décembre 2007 à 16:46:34 | Derniere erreur et ca risque de marcher...

slhuilli

Bonsoir,

soit le code ci dessous
<?php
    $link = mysqli_connect('localhost', 'root', '', 'essai');// le dernier parametre est le nom de la base

    /* Vérification de la connexion */
    if (!$link)
    {
        printf("Échec de la connexion : %s\n", mysqli_connect_error());
        exit();
    }

    mysqli_select_db($link, "essai");// NE PAS OUBLIER CETTE LIGNE QUI N'EST PAS DANS L'EXEMPLE !!
    //Le problème venait de la ligne ci-dessous qui renvoit faux dans $stmt! LE NOMBRE DE ? ETAIT ERRONNE, IL EN MANQUAIT UN !!!
    $stmt = mysqli_prepare($link, "INSERT INTO CountryLanguage VALUES (?, ?, ?, ?, ?)");
    if ($stmt == false)
    {
        echo "faux renvoyé";
    }
   
    $code = 'DEU';
    $language = 'Bavarian';
    $official = "F";
    $percent = 11.2;

    // Permet de lier les variables passées en paramètre à  la requête !
    mysqli_stmt_bind_param($stmt, 'ssd', $code, $language, $official, $percent);
 
    /* Exécution de la requête préparée */
    mysqli_stmt_execute($stmt);

    printf("%d ligne insérée.\n", mysqli_stmt_affected_rows($stmt));

    /* Fermeture de la commande */
    mysqli_stmt_close($stmt);

    /* Nettoyage de la table Langage */
    //mysqli_query($link, "DELETE FROM CountryLanguage WHERE Language='Bavarian'");
    //printf("%d ligne effacée.\n", mysqli_affected_rows($link));

    /* Fermeture de la connexion */
    mysqli_close($link);
?>


A l'execution, je récupère ce message d'erreur que je ne comprends pas, donc j'arrive pas a corriger :


Warning: mysqli_stmt_bind_param() [function.mysqli-stmt-bind-param]: Number of elements in type definition string doesn't match number of bind variables in /var/www/essai/index.php on line 24
0 ligne insérée.

Si qq'un pouvrait me remettre sur les rails....

SL

mardi 4 décembre 2007 à 18:18:21 | Re : Derniere erreur et ca risque de marcher...

lesdis

Réponse acceptée !
Bonjour,

Dans le type de la fonction mysqli_stmt_bind_param, tu donnes la valeur 'ssd' ce qui signifie que la fonction recevra 2 variable string puis 1 variable décimale. 
Je ne connais pas le type de tes 4 variables mais il manque surement une lettre dans type   

Bonne Prog

mardi 4 décembre 2007 à 20:15:47 | Re : Derniere erreur et ca risque de marcher...

malalam

Administrateur CodeS-SourceS
Hello,

bah ouais, déjà, y a sssd, puis tu proposes 5 remplacements (5 ?), et seulement 4 variables. D'où le message assez clair pourtant... ;-)

mercredi 5 décembre 2007 à 08:36:52 | Re : Derniere erreur et ca risque de marcher...

slhuilli

je croyais que ssd était un des paramètres moi.... (j'ai recherché un exemple mais pas assez commenté du coup). Donc si je comprends bien, ssd veut dire string-string-decimal

bon, je n'ai plus qu'un Warning.... A voir ce que c'est

Warning: mysqli_stmt_bind_param() [function.mysqli-stmt-bind-param]: Number of variables doesn't match number of parameters in prepared statement in /var/www/essai/index.php on line 31
0 ligne insérée.

mercredi 5 décembre 2007 à 09:33:12 | Re : Derniere erreur et ca risque de marcher...

malalam

Administrateur CodeS-SourceS
C'est ce que je te disais : tu bindes 4 paramètres alors que tu en mets 5 dans ta requête.
et l'option c'est sssd, pas ssd.

mercredi 5 décembre 2007 à 09:37:26 | Re : Derniere erreur et ca risque de marcher...

lesdis

Bonjour,

Je te conseille d'aller jeter un coup d'oeil sur la doc de la fonction mysqli_stmt_bind_param et mysqli_prepare

L'erreur que tu as est l'inverse de celle d'hier, apparemment tu annonce 5 variable dans la fonction mysqli_prepare et tu n'en donnes que 4 dans msqli_stmt_bind_param, donc ca plante.

Bonne Prog



Cette discussion est classé dans : ligne, link, bind, stmt, mysqli


Répondre à ce message

Sujets en rapport avec ce message

Probleme d'execution de requêtes [ par Remy05 ] Bonjour, Dans le cadre d'un site e-commerce, lors de la validation d'une commande j'ai besoin d'effectuer une succession requêtes d'insertion dans dif Recuperer certaine ligne et colonne [ par Mikael59 ] Bonjour j ai un fichier txt du genreFR-B:0899191654:1.34€ + 0.34/minBE-A:090966303:2.48€/AppelCH-A:0900909909:3.00CHF/minComment juste recuperer le nu grosse base de donnée [ par fistal ] re bonjour,c'est super urgentvoila j'ai une question toute bete phpmysql se limite bien a 255 ligne dans une table ?et si oui moi il me faudrait quelq recuperation colonne bdd puis variable a chaque ligne [ par jphilippev ] www.creativs.fr Erreur session_start [ par DJPGM ] Bonjour, J'ai un de ses maux de têtes du à un problème de session_start(); Voici l'erreur qui me sort :Warning: session_start() [function.session- affichage txt [ par jimpy00 ] bonjour voila mon code : $f=file('fichier.txt'); foreach ($f as $b){ $l=explode('||', $b); if ($l[0]==$_POST[cdd]) {echo $b; break;} } voila redirectionnement de la page [ par rinuom99 ] J'utilise le code suivant pour me connecter a une partie privée d'un site mais j'ai un probleme au niveau de la redirection à la suite de l'authentifi Problème de syntaxe avec un echo (pour remplir un select) [ par lolymeupy ] bonjour,j'ai un pb de syntaxe avec le code suivant :$liste_ville=chargement_select();echo('');//echo(''.'</ Affichage multi ligne&multi colonnes [ par touhami85 ] Salut tout le monde, j'ai un pb dans la réalisation de mon PFE en PHP. je veux faire un affichage du contenu d'une table de base de donné MSSQL en nom


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,28 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.