[PHP] Enlever un caractère d'une cellule

Résolu
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   -  
.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Alors voilà, j'ai un petit problème qui me perturbe pour continuer ma suite.
Tout d'abord dans ma base de donnée, j'ai une cellule "items" qui ajoute au furé à mesures des objets. C'est objets pour les identifié sont séparé avec des " | ". Je voudrais en PHP ne pas prendre le |, et ensuite séparer chaque nombre qui sont entre les |. Je vous donne un exemple pour être très clair !
1|2|6|7|8|9|

Merci d'avance, si je n'ai pas été assez précis, veuillez me demander des questions!

Cordialement Antoine


A voir également:

6 réponses

.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   33
 
utilise la fonction explode
http://php.net/manual/fr/function.explode.php
1
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Et sa donne quoi avec la requête suivant ?
	$objets = $donnees['objets'];
	$selection = mysql_query('SELECT * FROM items WHERE guid = "'.$objets.'" ');

Désolé je ne connais pas du tout cette fonction x_x
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Avec la fonction explode soit :
$str = ''.$objets.'';
print_r(explode('|', $str, 2));

J'obtiens un Array ( [0] => )
0
.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   33
 
essaye :

$objets = $donnees['objet'];
$objets2 = explode('|', $objets);

foreach($objets2 as $line)
{
echo $line.'<br />';
}


ce petit code devrait afficher un nombre par ligne
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Bizarre sa n'affiche rien. Help me =(
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Rien dis, ma table était vide xD, sinon comment fait-on pour prendre les nombres qui seront sortis par ligne ? Dois-je mettre un if ?
0
.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   33
 
quand tu dis "prendre un nombre"

c'est pour dire utiliser les nombres ?

si c'est le cas
remplace seulement "echo $line.'<br />';"
par les instructions de ton choix dans "foreach"

foreach est une fonction sefvant a explorer les variables sous forme de tableau
https://www.php.net/manual/fr/control-structures.foreach.php
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
J'ai essayer voici ce que sa donne, et sa ne marche pas =$
<?php
$objets2 = explode('|', $objets); 
$requete1 = mysql_query ("SELECT * FROM items WHERE guid='$objets2'");
$requete2 = mysql_fetch_array ($requete1);
foreach($objets2 as $requete2) 
if ($requete2['pos'] == 12) 
{
?>
Format 12
<?php
}
?>
0
.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   33
 
a la vue de tes essais de codage
je ne peut que te conseiller de suivre les formations du site du zero

https://openclassrooms.com/fr/courses/1603881-apprenez-a-creer-votre-site-web-avec-html5-et-css3
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql

ce sont de très bonne bases.
cela te permettra de faire tes scripts toi-meme, de maniere logique et coherente
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Je le connais déjà ce site, et pour ce qui est codage, on ne fait avec ce que l'on peux.
Ensuite il n'y a rien de tout sa, dans le site du zéro. Plutôt essayer de me faire comprendre que de me faire envoyer sur un site de nuls xD.
Après, tu n'es pas tout seul à savoir coder sur ccm (et heureusement) si tu n'as pas envie de m'expliquer et ben tu le fais pas.
0
.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   33
 
je ne dis pas sa pour te faire passer pour un nul

bref,
il faudrai que tu me dise ce que tu veut faire avec tes nombres
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Okai, j'ai une cellule nommé objets avec des nombre par exemple 1|2|6|7|8|9|. Ensuite j'ai une table comme tu as pu le constaté " items ". Ces nombres sont ensuite dans cette table (items) qui sont en GUID. Puisque l'on a les nombres sans | nous pouvons les sélectionner la ligne, et dire quelle est le nombre de la pos.
As-tu compris ?
0
.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   33
 
$objets = $donnees['objet'];
$objets2 = explode('|', $objets);

foreach($objets2 as $line)
{
$requete1 = mysql_query ("SELECT pos FROM items WHERE guid='.$line.'");
$requete2 = mysql_fetch_array ($requete1);

if($requete2['pos'] == 12)
{
echo 'pour guid = '.$line.'. le format est 12<br />';
}
}
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Bonsoir Zoro,
Voici ce que j'obtiens lorsque je met ton nouveau code :
la variable objets contient : "2|3|4|5|6|7|8|11|12|13|14|16|17|19|20|22|23|"
pour objets2 egal a : "2", pos vaut : "", le format est incorrect
pour objets2 egal a : "3", pos vaut : "", le format est incorrect
pour objets2 egal a : "4", pos vaut : "", le format est incorrect
pour objets2 egal a : "5", pos vaut : "", le format est incorrect
pour objets2 egal a : "6", pos vaut : "", le format est incorrect
pour objets2 egal a : "7", pos vaut : "", le format est incorrect
pour objets2 egal a : "8", pos vaut : "", le format est incorrect
pour objets2 egal a : "11", pos vaut : "", le format est incorrect
pour objets2 egal a : "12", pos vaut : "", le format est incorrect
pour objets2 egal a : "13", pos vaut : "", le format est incorrect
pour objets2 egal a : "14", pos vaut : "", le format est incorrect
pour objets2 egal a : "16", pos vaut : "", le format est incorrect
pour objets2 egal a : "17", pos vaut : "", le format est incorrect
pour objets2 egal a : "19", pos vaut : "", le format est incorrect
pour objets2 egal a : "20", pos vaut : "", le format est incorrect
pour objets2 egal a : "22", pos vaut : "", le format est incorrect
pour objets2 egal a : "23", pos vaut : "", le format est incorrect
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Or, tu as une petit problème je pense dans ton codage :
$requete1 = mysql_query ("SELECT pos FROM items WHERE guid='.$line.'"); 

Remplacé par :
$requete1 = mysql_query("SELECT * FROM items WHERE guid='" . $line . "'");

Et j'obtiens enfin :
pour objets2 egal a : "4", pos vaut : "12", le format est 12 (bien-sûr le reste ci dessus)
0
.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   33
 
mais tu n'a changé que la requete ???

et en mettant un *
la code apporte le resultat attendu ???
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Oui, voilà, une autre question, je ne peux pas mettre 2 fois la même chose dans la page web ?(toute la requête PHP)
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Rien qu'en changeant la valeur du if($requete2['pos'] == 6)
0
.Zoro. Messages postés 263 Date d'inscription   Statut Membre Dernière intervention   33
 
bah si
tu peut faire la meme chose avec des valeurs differentes

en definissant des variables
0