pb avec une chaine de caractères [RESOLU]

pb avec une chaine de caractères [RESOLU] - PHP - Programmation

Marsh Posté le 17-02-2005 à 17:45:02    

Bonjour,
hé oui j'ai encore un problème.
Je charge une page dont l'url contient 2 variables. Je les récupère et les appelle $cat et $photo.
La variable $photo se présente sous la forme nom1 ou nom1_det.
Moi je veux récupérer 'nom' et '1' et '_det' dans 3 variables différentes sachant que le nombre peut avoir 1 ou 2 chiffres.
J'ai donc écrit le code suivant qui récupère les 2 variables et test s'il y a '_det'. Si c'est le cas je vérifie si le nombre est composé de 1 ou 2 chiffres et l'intègre dans une variable.
Je me suis arrêté là pour l'instant car j'ai une erreur au test de présence des chiffres. Etant donné que c'est mes premiers pas en php est  ma toute première manipulation de chaines de caractères, j'aimerais que l'on m'aide pour que je puisse arriver au bout de ce code.

Citation :

$cat = $_GET['cat'];
$photo = $_GET['photo'];
 
if (isset($photo)) {
    $long = strlen($photo); //longueur de la chaine de caractère $photo
    $debut = $long-5;
    $fin = substr($photo, $debut, $long); //contient les 4 derniers caractères de la chaine $photo
 if ($fin = "_det" ) {
            $end = $long-4;
            $contrib = substr($photo, 0, $end);
            if (ereg($contrib, ([0-9]{2})) = true) {
                $long = strlen($contrib); //longueur de la chaine de caractère $ocntrib
                $debut = $contrib-3 // définit le début de coupe de chaine
                $contrib = substr($contrib, $debut, $long); //défini $contrib avec les 2 derniers caractères de l'ancien $contrib
            } //if
   elseif (ereg($contrib, ([0-9]{1})) = true) {
                $long = strlen($contrib); //longueur de la chaine de caractère $ocntrib
                $debut = $contrib-2 // définit le début de coupe de chaine
                $contrib = substr($contrib, $debut, $long); //défini $contrib avec les 2 derniers caractères de l'ancien $contrib
            } //elseif
    } //if ($fin = "_det" )


 
Merci
Astik


Message édité par astik89 le 18-02-2005 à 11:05:56
Reply

Marsh Posté le 17-02-2005 à 17:45:02   

Reply

Marsh Posté le 17-02-2005 à 18:14:14    

la question c'est pourquoi tu veux décomposer la VALEUR de la variable? t'en fait quoi apres
ds le genre plus simple : tu nomme ta variable nom_1_det
pour la récupérer :  
list($nom,$num,$det) = explode('_',$photo);
$num = intval($num);
 
 

Reply

Marsh Posté le 17-02-2005 à 18:23:01    

je me sers de chaque variable pour récupérer des infos dans une BDD.
Mais en effet je peux nommer la variable nom_1_det
je n'y avais pas pensé.
merci


Message édité par astik89 le 17-02-2005 à 18:23:32
Reply

Marsh Posté le 17-02-2005 à 18:25:46    

Astik89 a écrit :

je me sers de chaque variable pour récupérer des infos dans une BDD.
Mais en effet je peux nommer la variable nom_1_det
je n'y avais pas pensé.
merci


vaut mieux chercher dans la simplicité
tu pouvais aussi recupérer chaque element d'une variable $_GET
genre nom=toto&num=1&blablasuivant=det


Message édité par Profil supprimé le 17-02-2005 à 18:27:19
Reply

Marsh Posté le 17-02-2005 à 18:38:04    

non, je ne pouvais pas car la variable provient d'un nom de fichier d'image.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed