Problème affichage résultat [PHP]
Résolu
Kitty-cat
Messages postés
141
Date d'inscription
Statut
Membre
Dernière intervention
-
Kitty-cat Messages postés 141 Date d'inscription Statut Membre Dernière intervention -
Kitty-cat Messages postés 141 Date d'inscription Statut Membre Dernière intervention -
Bonjour à vous, chers ccmistes.
Je vous demande de l'aide suite à un problème d'affichage de résultats d'un mysql_fetch_array(). En effet, alors que je l'utilise comme je le fais tout le temps d'habitude, ce couillon oublie toujours de m'envoyer un résultat, en l'occurence mon premier résultat. Il prend ensuite les autres correctement. C'est ma foi un peu gênant, car je souhaiterais utiliser les résultats récupérés pour faire ensuite une requête de delete. Or s'il me manque un des fichiers à supprimer, ca peut etre gênant (Je n'ai pas encore codé la partie du delete par contre).
Voici le code :
[code]
<?php
session_start();
$dsn='localhost';
$username='root';
$password='';
$sqlconnect=mysql_connect($dsn,$username,$password);
mysql_select_db('Intranet',$sqlconnect);
$tab = array();
$resultat = array();
foreach($_POST as $key => $value)
{
array_push($tab,$value);
}
$select = " select NomOriginalFichier From IdFich ";
$counttab = count($tab);
if ($counttab == 1) {
$where = " where idfichiers = ".$tab[0]."";
}
else {
$where = " where idfichiers = ".$tab[0]."";
for ($i=0;$i<=($counttab - 1);$i++) {
$where .= " or idfichiers = ".$tab[$i]."";
}
}
$select .= $where;
$res = mysql_query($select);
$resultat = mysql_fetch_array($res);
$NomFichier = array();
while($resultat=mysql_fetch_array($res)){
array_push($NomFichier, $resultat['NomOriginalFichier']);
}
echo $NomFichier[0];
echo "<br />";
echo $NomFichier[1];
?>
[/code]
Cela fait bien une heure que je cherche la solution au problème, mais pour l'instant rien n'a marché. Je vais continuer à chercher, mais j'espère, si d'aventure je ne trouvais pas, que l'un de vous saura m'aider à corriger. D'avance, je vous remercie.
Cordialement,
Kitty-Cat
Je vous demande de l'aide suite à un problème d'affichage de résultats d'un mysql_fetch_array(). En effet, alors que je l'utilise comme je le fais tout le temps d'habitude, ce couillon oublie toujours de m'envoyer un résultat, en l'occurence mon premier résultat. Il prend ensuite les autres correctement. C'est ma foi un peu gênant, car je souhaiterais utiliser les résultats récupérés pour faire ensuite une requête de delete. Or s'il me manque un des fichiers à supprimer, ca peut etre gênant (Je n'ai pas encore codé la partie du delete par contre).
Voici le code :
[code]
<?php
session_start();
$dsn='localhost';
$username='root';
$password='';
$sqlconnect=mysql_connect($dsn,$username,$password);
mysql_select_db('Intranet',$sqlconnect);
$tab = array();
$resultat = array();
foreach($_POST as $key => $value)
{
array_push($tab,$value);
}
$select = " select NomOriginalFichier From IdFich ";
$counttab = count($tab);
if ($counttab == 1) {
$where = " where idfichiers = ".$tab[0]."";
}
else {
$where = " where idfichiers = ".$tab[0]."";
for ($i=0;$i<=($counttab - 1);$i++) {
$where .= " or idfichiers = ".$tab[$i]."";
}
}
$select .= $where;
$res = mysql_query($select);
$resultat = mysql_fetch_array($res);
$NomFichier = array();
while($resultat=mysql_fetch_array($res)){
array_push($NomFichier, $resultat['NomOriginalFichier']);
}
echo $NomFichier[0];
echo "<br />";
echo $NomFichier[1];
?>
[/code]
Cela fait bien une heure que je cherche la solution au problème, mais pour l'instant rien n'a marché. Je vais continuer à chercher, mais j'espère, si d'aventure je ne trouvais pas, que l'un de vous saura m'aider à corriger. D'avance, je vous remercie.
Cordialement,
Kitty-Cat
A voir également:
- Problème affichage résultat [PHP]
- Resultat foot - Télécharger - Vie quotidienne
- Affichage double ecran - Guide
- Easy php - Télécharger - Divers Web & Internet
- Problème affichage fenêtre windows 10 - Guide
- Lexer resultat - Télécharger - Sport
5 réponses
Bonjour,
Je pense que le code suivant n'est pas correct
en effet, ta boucle For devrait commencer avec la valeur $i=1 car tu as déjà utilisé l'élement 0 de ton array
A plus et Joyeuses Fêtes
Je pense que le code suivant n'est pas correct
else { $where = " where idfichiers = ".$tab[0].""; for ($i=0;$i<=($counttab - 1);$i++) { $where .= " or idfichiers = ".$tab[$i].""; }
en effet, ta boucle For devrait commencer avec la valeur $i=1 car tu as déjà utilisé l'élement 0 de ton array
else { $where = " where idfichiers = ".$tab[0].""; for ($i=1;$i<=($counttab - 1);$i++) { $where .= " or idfichiers = ".$tab[$i].""; }
A plus et Joyeuses Fêtes
Rebonjour
As-tu déjà essayè avec le code suivant
ou sinon celà
De cette façon tu sauves aussi ton premier $resultat
A plus
As-tu déjà essayè avec le code suivant
$NomFichier = array(); $res = mysql_query($select); if(mysql_num_rows($res)) { while($resultat = mysql_fetch_assoc($res)) { array_push($NomFichier, $resultat['NomOriginalFichier']); } }
ou sinon celà
$NomFicher = array(); $resultat = mysql_fetch_array($res); array_push($NomFichier, $resultat['NomOriginalFichier']); while($resultat=mysql_fetch_array($res)) { array_push($NomFichier, $resultat['NomOriginalFichier']); }
De cette façon tu sauves aussi ton premier $resultat
A plus
Bonjour,
à la place de:
$tab = array();
$resultat = array();
foreach($_POST as $key => $value)
{
array_push($tab,$value);
}
$select = " select NomOriginalFichier From IdFich ";
$counttab = count($tab);
if ($counttab == 1) {
$where = " where idfichiers = ".$tab[0]."";
}
else {
$where = " where idfichiers = ".$tab[0]."";
for ($i=0;$i<=($counttab - 1);$i++) {
$where .= " or idfichiers = ".$tab[$i]."";
}
}
$select .= $where;
simplifies et mets:
Ca réglera ton pb de premiere ligne extraite.
Le foreach($_POST...
n'est pas trop réglo car tu empile dans ton array tout ce que t'envoie le formulaire y compris le bouton Submit
à la place de:
$tab = array();
$resultat = array();
foreach($_POST as $key => $value)
{
array_push($tab,$value);
}
$select = " select NomOriginalFichier From IdFich ";
$counttab = count($tab);
if ($counttab == 1) {
$where = " where idfichiers = ".$tab[0]."";
}
else {
$where = " where idfichiers = ".$tab[0]."";
for ($i=0;$i<=($counttab - 1);$i++) {
$where .= " or idfichiers = ".$tab[$i]."";
}
}
$select .= $where;
simplifies et mets:
$tab = array(); foreach($_POST as $key => $value) { array_push($tab,$value); } $select = "SELECT NomOriginalFichier FROM IdFich WHERE "; for ($i=0;$i<sizeof($tab);$i++) { if($i>0){ $where .=" OR ";} $where .= "idfichiers = ".$tab[$i].""; } $select .= $where;
Ca réglera ton pb de premiere ligne extraite.
Le foreach($_POST...
n'est pas trop réglo car tu empile dans ton array tout ce que t'envoie le formulaire y compris le bouton Submit
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question