PHP Fonction Split()
Résolu
dubuducu
Messages postés
391
Date d'inscription
Statut
Membre
Dernière intervention
-
JB_A Messages postés 301 Date d'inscription Statut Membre Dernière intervention -
JB_A Messages postés 301 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je souhaiterai savoir s'il est possible de faire ceci :
je voudrais, pour des raisons diverses, recuperer les infos de formulaires de ma base sql a l'aide d'une interface ou l'utilisateur entre par exemple l'id :
EX: Devis n° : 29,25,16,34
Submit
Ces données sont separées par des virgules et je souhaiterai savoir quelle genre de requete je devrai faire .
Merci !
Dois-je utiliser la fonction explode ou split ?
De plus je ne sais pas comment les utiliser ... et oui je suis nul :)
Merci de votre aide qui me sera tres precieuse
je souhaiterai savoir s'il est possible de faire ceci :
je voudrais, pour des raisons diverses, recuperer les infos de formulaires de ma base sql a l'aide d'une interface ou l'utilisateur entre par exemple l'id :
EX: Devis n° : 29,25,16,34
Submit
Ces données sont separées par des virgules et je souhaiterai savoir quelle genre de requete je devrai faire .
Merci !
Dois-je utiliser la fonction explode ou split ?
De plus je ne sais pas comment les utiliser ... et oui je suis nul :)
Merci de votre aide qui me sera tres precieuse
A voir également:
- PHP Fonction Split()
- Fonction si et - Guide
- Split cam - Télécharger - Messagerie
- Easy php - Télécharger - Divers Web & Internet
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
7 réponses
Avec explode oui. Tu récupères ensuite un tableau.
un exemple :
Plus d'infos sur explode : http://www.manuelphp.com/php/function.explode.php
un exemple :
<?php $numero="12,23,34,45"; $array=explode(",",$numero); echo $array[0]; //affiche 12 echo $array[1]; //affiche 23 echo $array[2]; //affiche 34 echo $array[3]; //affiche 45 ?>
Plus d'infos sur explode : http://www.manuelphp.com/php/function.explode.php
Merci beaucoup
je ne comprends pas tout : a quoi correspond cette ligne ?
je souhaiterai que ce soit des nombres aléatoires que l'utilisateur a envi de rentrer ... le 48 ou le 22 si cela lui fait plaisir
Merci
je ne comprends pas tout : a quoi correspond cette ligne ?
$numero="12,23,34,45";
je souhaiterai que ce soit des nombres aléatoires que l'utilisateur a envi de rentrer ... le 48 ou le 22 si cela lui fait plaisir
Merci
Bah c'est ton numéro de devis. Je suppose qu'il est attribué automatiquement par le reste du script php.
Si tu veux que l'on reprenne exactement ton exemple ça donne : $numero="29,25,16,34";
Si tu veux que l'on reprenne exactement ton exemple ça donne : $numero="29,25,16,34";
je ne pense pas avoir eté clair ou alors c'est moi qui suis débile ...
mes devis rentrent d'eux meme dans la base et vont du devis n°1 a 800 par exemple aujourdui
je souhaiterai afficher le 18,24,32 pour les consulter.et demain le 34 et 56!
aparament ici :
je te passe un bout de mon code :
dans admin.phpje souhaiterai avoir la zone de texte qui me permet de rentrer les devis
et voici liste.php qui me les affiche.
Merci
Pour le moment mes requetes font un affchage en fonction de deux parametres.je les changerai par la suite pour mettre en fonction de l'id saisi par l'utilisateur voyez vous ?
mes devis rentrent d'eux meme dans la base et vont du devis n°1 a 800 par exemple aujourdui
je souhaiterai afficher le 18,24,32 pour les consulter.et demain le 34 et 56!
aparament ici :
$numero="12,23,34,45";est fixe !!
je te passe un bout de mon code :
dans admin.phpje souhaiterai avoir la zone de texte qui me permet de rentrer les devis
et voici liste.php qui me les affiche.
Merci
<?php session_start(); include('bdd.php'); $b = $_POST['thematique_projet']; $_SESSION['b'] = $b; $k = $_SESSION['k']; if ( ($a == 'null')) { if ($b == 'null') { $sql = "SELECT * FROM devis_table WHERE sous_categorie = '" . $k . "' ORDER BY '" . $a ."' "; $result = mysql_query( $sql) or die( "Erreur : " . mysql_error() ); } else $sql = "SELECT * FROM devis_table WHERE thematique_projet = '" . $b . "' ORDER BY '" . $a ."' "; $result = mysql_query( $sql) or die( "Erreur : " . mysql_error() ); } else { $sql = "SELECT * FROM devis_table WHERE departement = '" . $a . "' AND thematique_projet = '" . $b . "' ORDER BY '" . $a ."' "; $result = mysql_query( $sql) or die( "Erreur : " . mysql_error() ); } if ( $thematique_projet == 'null') { echo"<b><center>Votre Recherche porte sur <br> $k / Toutes les Thematiques <br><br><br></center></b>\n"; } else { echo"<b><center>Votre Recherche porte sur <br> $k / $thematique_projet <br><br><br></center></b>\n"; } if($result) { // debut du tableau echo '<form action="confirmation.php" method="post">'; echo '<font size="2" face="Arial" >'; echo '<table bgcolor="#FFFFFF" border="0" align="center">'."\n"; // première ligne on affiche les titres dans 4 colonnes echo '<tr>'; echo '<td width="80" bgcolor="#3366ff"><b><u><font color="#FFFFFF">Devis n° :</font></u></b></td>'; echo '<td bgcolor="#3366ff"><b><u><font color="#FFFFFF">Département </font></u></b></td>'; echo '<td bgcolor="#3366ff"><b><u><font color="#FFFFFF">Commentaires</font></u></b></td>'; echo '<td bgcolor="#3366ff"><b><u><font color="#FFFFFF">Clics Restants</font></u></b></td>'; echo '<td bgcolor="#3366ff"><b><u></u></b></td>'; echo '</tr>'."\n"; // lecture et affichage des résultats sur 4 colonnes, 1 résultat par ligne. $i=0; $timeout = 604800; $heure = time(); while($row = mysql_fetch_array($result)) { if ( ( $heure < ($row['time'] + $timeout )) || ( $row['time'] == "0" )) if ( $row['clic'] != "0" ) { { echo '<tr>'; echo '<td width="80" bgcolor="#e8e2e2">'.$row[id].'</td>'; echo '<td bgcolor="#e8e2e2">'.$row[departement].'</td>'; echo '<td bgcolor="#e8e2e2">'.$row[commentaires].'</td>'; echo '<td bgcolor="#e8e2e2">'.$row[clic].'</td>'; echo '<td><input type="checkbox" name="option'.$i.'" value="'.$row[id].'">acheter</td>'; echo '</tr>'; $i = $i+1; echo '<tr>'; echo '<td></td>'; echo '<td bgcolor="#e8e2e2"><h5><i>Ajouté le :<br> </h5></i></td>'; echo '<td bgcolor="#e8e2e2"><h5><i>'.$row[Date].'</h5></i></td>'; echo '<td bgcolor="#e8e2e2"><h5><i>'.$row[objet_message2].'</h5></i></td>'; echo '<td></td>'; echo '</tr>'; echo '<input type="hidden" name="variable" value="'.$i.'">'; } } } echo '</table>'."\n"; echo "<input type='submit' value='Commander Devis' /></form>"; echo '</font>'; // fin du tableau. } else { echo 'Pas d\'enregistrements dans cette table...'; } ?>
Pour le moment mes requetes font un affchage en fonction de deux parametres.je les changerai par la suite pour mettre en fonction de l'id saisi par l'utilisateur voyez vous ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est difficile de voir comment marche le bin's avec un unique bout de script. Mais je comprends pas vraiment :
L'utilisateur rentre dans un formulaire les numéros des devis à afficher par exemple 12,45,78,65 c'est ça ? (voir https://www.commentcamarche.net/contents/493-formulaires-html-cours-et-exemples pour ce faire)
Et ensuite, ce qu'on souhaite c'est les afficher ?
Dans ce cas, récupère les numéros de chaque devis à afficher avec une variable par numéro (comme ci-dessus, mais avec une boucle for() ou while() pour que ça marche quel que soit le nombre de devis à afficher), et ensuite connecte-toi à la base pour demander les devis en question. Pour cela il faut que tu comprennes exactement ce qu'effectue liste.php sinon ce n'est même pas pensable. Il faut savoir à quoi correspondent $a, $b, $k ...
L'utilisateur rentre dans un formulaire les numéros des devis à afficher par exemple 12,45,78,65 c'est ça ? (voir https://www.commentcamarche.net/contents/493-formulaires-html-cours-et-exemples pour ce faire)
Et ensuite, ce qu'on souhaite c'est les afficher ?
Dans ce cas, récupère les numéros de chaque devis à afficher avec une variable par numéro (comme ci-dessus, mais avec une boucle for() ou while() pour que ça marche quel que soit le nombre de devis à afficher), et ensuite connecte-toi à la base pour demander les devis en question. Pour cela il faut que tu comprennes exactement ce qu'effectue liste.php sinon ce n'est même pas pensable. Il faut savoir à quoi correspondent $a, $b, $k ...
JB_A, tu me dis de recuperer les numeros mais ceux ci sont séparés par des virgules ... si je met where ID = ($list) cela va me poser une probleme si je veux recuperer 4 devis avec les id separés par les virgules .. ?
alors voici :
dans index2.php:
dans liste2.php:
Voici, il m'affiche 12,25 si je tape 12,25 mais la requete ne fonctionne pas
dans index2.php:
<? session_start(); include('bdd.php'); echo '<form action="liste2.php" method="post">'; echo '<tr>'; echo '<td>'; echo '<font color="#FFFFFF" size="3" face="Century Gothic">'; echo '<td bgcolor="#3366ff"><b><u><font color="#FFFFFF">Numeros</font></u></b></td>'; echo '<input name="saisie" style="width:203; font-weight:700; height:22" size="25"></font>'; echo '</td>'; echo '</tr>'."\n"; $decoupe = explode(",",$saisie); echo "<input type='submit' value='afficher devis' /></form>"; ?>
dans liste2.php:
<?php session_start(); include('bdd.php'); $tre = $_POST['saisie']; echo "$tre"; $sql = "SELECT clic FROM devis_table WHERE id IN ('$tre') "; $result = mysql_query( $sql) or die( "Erreur : " . mysql_error() ); if($result) { echo '<table>'; echo '<tr>'; echo '<td width="80" bgcolor="#3366ff"><b><u><font color="#FFFFFF">Devis n° :</font></u></b></td>'; echo '</tr>'."\n"; // lecture et affichage des résultats sur 4 colonnes, 1 résultat par ligne. while($row = mysql_fetch_array($result)) { echo '<tr>'; echo '<td width="80" bgcolor="#e8e2e2">'.$row[clic].'</td>'; echo '</tr>'; } } else { echo 'Pas d\'enregistrements dans cette table...'; } echo '</table>'; ?>
Voici, il m'affiche 12,25 si je tape 12,25 mais la requete ne fonctionne pas
Il ne faut pas mettre de guillemet à $tre.
Chez moi, le SQL me renvoie bien 3 enregistrements :
Pour info : https://www.w3schools.com/sql/sql_in.asp
@ +
Chez moi, le SQL me renvoie bien 3 enregistrements :
SELECT fjs_ticket_id, fjs_categoryticket_libelle, fjs_state_libelle, fjs_ticket_date_created, fjs_inus_prenom, fjs_inus_nom, fjs_ticket_userid, fjs_ticket_comment, fjs_ticket_contournement, fjs_ticket_soluce FROM tjs_ticket, tjs_state, tjs_category_ticket, tjs_internal_user WHERE fjs_ticket_userid = fjs_inus_id AND fjs_ticket_stateid = fjs_state_id AND fjs_ticket_categorid = fjs_categoryticket_id AND fjs_ticket_id IN ( 2, 3, 5 )
Pour info : https://www.w3schools.com/sql/sql_in.asp
@ +