Suppression tabulation dans echo();

Signaler
Messages postés
12
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
18 décembre 2007
-
Messages postés
5
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
11 janvier 2006
-
je travail sur un systeme de paiement en ligne qui doit lire une chaine de caractere pour valider la commande.
voici mon code :

<?
$ref = $_GET['Reference'];
$act = $_GET['Action'];
$montant = 25;
if($act == "DETAIL")
{
echo 'Reference='.$ref.'&Action='.$act.'&Reponse='.$montant;
}
if($act == "ERREUR")
{
echo 'Reference='.$ref.'&Action='.$act.'&Reponse=OK';
}
if($act == "ACCORD")
{
echo 'Reference='.$ref.'&Action='.$act.'&Reponse=OK';
}
if($act == "REFUS")
{
echo 'Reference='.$ref.'&Action='.$act.'&Reponse=OK';
}
if($act == "ANNULATION")
{
echo 'Reference='.$ref.'&Action='.$act.'&Reponse=OK';
}
?>

Le lien qui affiche la chaine http://www.coupedetunisie.com/test.php

Le systeme de paiement refuse de lire la chaine car il ya présence de tabulation (3) et de retour chario(2) a la fin de la chaine, vous pouvez vérifier en affichant le code source a l'aide de votre navigateur.

J'ai essayer toutes les fonction PHP d'affichage et toujours la meme erreur!

Question: comment je peut supprimer ces ##~&é&" de tabulation et de retour chario
A voir également:

5 réponses

Messages postés
12
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
18 décembre 2007

C'est bon j'ai trouver la solution!!!!!!

rajouter exit(); a la fin de echo :

echo 'Reference='.$ref.'&Action='.$act.'&Reponse='.$montant;exit();

Sa fais 3 jours que je cherche et a peine j'ai poster le message ci-dessous que j'ai trouver la solution!

Merci.
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Hello,

exit(); ... ???
Heu...

exit () met fin au script.

Pour virer tes tabulations et retour chariot, regarde la fonction trim ();
Messages postés
5
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
11 janvier 2006

Salut,

juste un plus

je vais te donner un mot qui va te changer la vie "switch"

@+
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Bof...perso je préfère les if (). Ensuite, dans son cas, c'est inutile. Voilà à quoi peut se résumer son code :

<?php
if (isset ($_GET['Action'], $_GET['Reference'])) {
$actionArr = array ('ERREUR', 'ACCORD', 'ANNULATION', 'REFUS');
$montant = 25;
if ($_GET['Action'] === 'DETAIL') {
echo 'Reference='.$_GET['Reference'].'&Action='.$_GET['Ac tion'].'&Reponse='.$montant;
} elseif (in_array ($_GET['Action'], $actionArr)) {
echo 'Reference='.$_GET['Reference'].'&Action='.$_GET['Ac tion'].'&Reponse=OK';
} else {
echo 'Erreur';
}
}
?>
Messages postés
5
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
11 janvier 2006

oui si tu simplifies son code je suis d'accord avec toi
mais vu son code il ne devait pas connaitre

switch ($act) {
case "DETAIL":
action;
break;
case "ERREUR":
action;
break;
case "ACCORD":
action;
break;
case "REFUS":
action;
break;
case "ANNULATION":
action;
break;
default:
action;
}

ce code est bien plus souple pour la definition de ces actions suivant la valeur de $act.

@+