PHPFrance

Discuter de tout ce qui touche au PHP, en français.

Vers le contenu

» Masquer les résultats de la recherche

Recherche dynamique PHPfrance

  1. Effectuez une recherche, les résultats s'afficheront dynamiquement ici.

Récupérer valeur d'une cellule de ma table...

Pour ceux qui débutent en PHP.

Récupérer valeur d'une cellule de ma table...

Messagede desesphp le 06 Fév 2010, 19:29

Bonjour,
Voici un petit défi... ElePHPant
J'aimerai dans mon script php récupérer la valeur de cellules d'une de mes tables. Admettons que ce soit ma bibliothèque... J'ai une table livres construite ainsi: id- titre -auteur...
Voici ce que je fais pour récupérer toutes les données :lol: :
Syntaxe: [ Télécharger ] [ Masquer ]
Code php
<?php
mysql_select_db($database_toto, $ toto);
$query_livres = "SELECT * FROM toto_livres";
$livres = mysql_query($query_livres, $ toto) or die(mysql_error());
$row_ livres = mysql_fetch_assoc($livres);
$totalRows_ livres = mysql_num_rows($livres);

while ($data = mysql_fetch_array($livres)) {
      echo 'id : '.$data['id'].'<br />';
      echo 'titre : '.$data['titre'].'<br /><br />';  
}  
mysql_free_result($livres);
?>

Première question: comment se fait-il que la première ligne de ma table, celle de l'id 1 ne s'affiche pas? :( Est-ce parce que les array débutent à zéro (donc il n'affiche pas le zéro)? Dans ce cas, comment faire?

Et maintenant, plus compliqué: comment faire pour afficher le titre de la ligne 15 de ma table (le livre de l'id 15) et celui de l'id 23 par exemples? Juste ces deux titres? :shock:
Merci d'avance à tous ceux qui voudront bien éclairer ma lanterne...:priere:
desesphp
Embryon
 
Messages: 7
Inscription: 18 Nov 2009, 18:03

Publicité

Re: Récupérer valeur d'une cellule de ma table...

Messagede Superpilou le 06 Fév 2010, 20:23

Il y a une erreur dans tes variables.

Tu as marqué ca:
Syntaxe: [ Télécharger ] [ Masquer ]
Code php
$row_ livres
$totalRows_ livres


Le soucis c'est que le serveur pense que c'est la variable $row_ et la variable $totalRows

Il faut donc que tu les retires l'espace entre pour que ca donne:
Syntaxe: [ Télécharger ] [ Masquer ]
Code php
$row_livres
$totalRows_livres
Superpilou
J'ai codé une fonction !
 
Messages: 168
Inscription: 03 Juil 2009, 16:54

Re: Récupérer valeur d'une cellule de ma table...

Messagede Ryle le 07 Fév 2010, 11:46

En plus des problèmes de syntaxe signalés par superpilou, voici pour répondre à tes questions :

Si tu n'affiches pas le premier élément, c'est parce qu'avant de boucler sur tous tes livres avec le mysql_fetch_array(), tu fais appel à un mysql_fetch_assoc(). Ceci a pour effet de lire le premier résultat de ta requête et de passer au suivant. Du coup ton mysql_fetch_array() commence à partir du deuxième enregistrement.

Concernant l'affichage de deux enregistrements seulement, le plus simple est de filtrer les résultats à récupérer directement dans ta requête :
Syntaxe: [ Télécharger ] [ Masquer ]
Code sql
SELECT ...... FROM toto_livres WHERE id IN (15, 23)
Ainsi, seuls ces éléments seront retournés et ton code les affichera normalement :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...
Avatar de l’utilisateur
Ryle
Modérateur PHPfrance
Modérateur PHPfrance
 
Messages: 7952
Inscription: 07 Fév 2006, 16:25
Localisation: Lat: 48°89. Long: 2°30.

Re: Récupérer valeur d'une cellule de ma table...

Messagede desesphp le 07 Fév 2010, 20:10

Hello Superpilou et Ryle,
Merci beaucoup pour vos réponses! Ah, et je voulais également dire que j'adore ton avatar Ryle! :D
Pour les espaces entre $rows_ livres... c'était juste un petit souci lors de la copie, car sur ma page, je n'avais pas d'espace entre les deux... Et je comprends que du coup, sinon, ça aurait été une requête sur rows... :wink:
Concernant assoc et array... Merci: ça m'a remis les idées en place. J'ai donc changé mon script en supprimant la ligne avec assoc, et ça fonctionne parfaitement, j'affiche tous les résultats de ma table depuis la première ligne (l'id 1) ... =D>
Je sais que dans l'absolu, le plus simple est de mettre "where id in (15,23)"... Le problème, c'est que je veux afficher ces valeurs à l'intérieur d'un if...else... que j'ai déjà construit... Mais du coup, je ne sais pas bien la syntaxe pour dire:
"si blabla... afficher le titre du livre avec l'id 15...". Ce qui me pose problème dans mon script, c'est surtout: "le contenu de la cellule titre de la table livres pour la ligne id=15"... :shock:
Je ne sais pas si c'est clair... ni d'ailleurs si c'est possible... Je me demandais s'il existait quelque chose du style:
Syntaxe: [ Télécharger ] [ Masquer ]
Code php
echo '.$data['titre']. where id=15'

Ne vous arrachez pas les cheveux devant une telle hérésie... :oops:
Une petite indication?
desesphp
Embryon
 
Messages: 7
Inscription: 18 Nov 2009, 18:03


Retourner vers PHP débutant

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 4 invités

  • Publicité