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 :

mysqli_query [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Mai 2007
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Mai 2007
    Messages : 485
    Par défaut mysqli_query
    Bonjour,

    En changeant mes requêtes MySQL_ en mysqli_ celle-ci ne fonctionne pas :

    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
    <?php
     
    // Connexion
    include ("../php/mysqli_conf.inc.php");
     
    // Requête
    if ($result = mysqli_query($link, "SELECT * FROM `plant` WHERE french='Cormier'"))
        {
            $rows = mysqli_num_rows($result);
            mysqli_free_result($result);
        }
     
     
    if ($rows > 0)
    	{
    	while ($rows=mysqli_fetch_array($result))
    		{
    			$Latin=ucfirst($rows['latin']);
    		}
    	}
     
    	echo $Latin;
    ?>
    Tandis que l'ancien script fonctionne bien (je le donnepour info) :
    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
    <?php
     
    // Connexion
    include ("../php/mysql_conf.inc.php");
    $link=mysql_connect($host,$login,$password) or die ('Erreur :'.mysql_error() );
    $base = mysql_select_db($base);
     
    // Requête
    	$select = "SELECT * FROM `plant` WHERE french='Cormier'";
    	$result =mysql_query($select,$link) or die ('Erreur :'.mysql_errno().mysql_error());
    	$rows = mysql_num_rows($result);
     
    if ($rows > 0)
    	{
    	while ($rows=mysql_fetch_array($result))
    		{
    			$Latin=ucfirst($rows['latin']);
    		}
     
    		echo $Latin;
    	}
    ?>
    J'ajoute que ma connexion se fait bien.
    Je vous remercie d'avance pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour Denis,

    1/ Enlève cette ligne (elle n'est ni utile, ni bien placée !) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            mysqli_free_result($result);
    mysqli_free_result() libère la mémoire associée à un résultat
    Or, tu en as besoin après (de ce résultat).


    2/ D'autre part, tu utilises la variable $rows pour 2 choses différentes.
    Attention aux confusions...

  3. #3
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Mai 2007
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Mai 2007
    Messages : 485
    Par défaut
    Bonsoir jreaux et merci.

    Enlève la ligne mysqli_free_result($result);
    Oui, en effet ... je m'en sers juste après

    Par contre, je ne te suis pas sur $rows ...

  4. #4
    Invité
    Invité(e)
    Par défaut
    1/ $rows = mysql_num_rows($result); // nombre ,

    2/ while ($rows=mysql_fetch_array($result)) // array ,

    Ce sont 2 données différentes.
    Dernière modification par rawsrc ; 23/05/2016 à 22h57.

  5. #5
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Mai 2007
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Mai 2007
    Messages : 485
    Par défaut
    Ok, du coup, j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    if ($result = mysqli_query($link, "SELECT * FROM `plant` WHERE french='Cormier'"))
        {
            $donnees = mysqli_num_rows($result);
        }
     
     
    if ($donnees > 0)
    	{
    	while ($rows=mysqli_fetch_array($result))
    		{
    			$Latin=ucfirst($rows['latin']);
    		}
    	}
    Merci encore.

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

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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