[RESOLU] Preg_match ou le mettre

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Preg_match ou le mettre

Re: [RESOLU] Preg_match ou le mettre

par Zartos » 16 août 2012, 10:56

Ok, merci de l'info, je m'en vais l'essayer :)

Re: [RESOLU] Preg_match ou le mettre

par sirakawa » 16 août 2012, 09:57

Bjr,
strpos() fait la même chose plus simplement que pregmatch: il suffit de tester qu'il renvoie 0 par ===

Re: Preg_match ou le mettre

par Zartos » 16 août 2012, 09:41

Avant tout merci pour ta réponse rapide.

En fait c'est bon j'ai trouvé, je suis trop bête. C'est pas la bonne condition. La première permet d'associer la valeur à la session. Le controle se fait en bas. J'ai donc mis :

if((!empty($EMBALLAGE))&&(preg_match("#^PE#", $EMBALLAGE ))){
$_SESSION['emb']=$EMBALLAGE;
$_SESSION['cont']=$CONTENANT;
header ("Location: Conditionnement.php");
et c'est bon ça passe.
Maintenant je dois gérer pour le contenant, mais ça devrait aller.

Merci encore.

Re: Preg_match ou le mettre

par xTG » 16 août 2012, 09:13

Tu l'utilises ici cette variable :
if(!empty($frm['searchEmb_x'])) {
                $_SESSION['emb']=$EMBALLAGE;
                header("Location: EmbContExist.php");
        }
Donc je le mettrai là, vu que s'il commence pas par ce que tu veux c'est que ce n'est pas à enregistrer.

Preg_match ou le mettre

par Zartos » 16 août 2012, 09:06

Bonjours,
Je suis débutant en php et par conséquent je ne cerne pas encore tous les aspects de ce langage. Ainsi j'ai un problème avec le preg_match, je m'explique :
J'ai besoin de vérifier sur un champ que lorsque l'utilisateur entre une valeur celle-ci doit obligatoirement commencer par PE. Or dans dans mon php j'ai déja une condition de remplissage, je ne sais donc absolument pas ou mettre ma condition preg_match. Je l'ai essayé partout mais je crois qu'il y a peut être un problème dans l'architecture des conditions.

Pourriez vous m'aider s'ils vous plaît.
Merci d'avance.
Voici le bout de code qui me permet de gérer l'action des inputs.
/** Condition permettant de vérifier que les champs inputs ne sont pas vides et de rediriger en conséquences.*/
[php]if (sizeof ( $_POST) > 0) {
	
	$frm=$_POST;
	barre_menu($frm);
	
	if ((!empty($frm['emb']))&&(preg_match("#^PE#", $EMBALLAGE ))){   /**J'ai pensé à le mettre ici mais avant je l'ai mis dans une conditions à part. Mais il y a conflit je pense */
		$EMBALLAGE=$frm['emb'];
	}
	if (!empty ($frm['cont'])) {
		$CONTENANT=$frm['cont'];
	}
	if(!empty($frm['searchEmb_x'])) {
		$_SESSION['emb']=$EMBALLAGE;
		header("Location: EmbContExist.php");
	}
	if(!empty ($frm['searchCont_x'])) {
		$_SESSION['cont']=$CONTENANT;
		header("Location: EmbContExist.php");
	}	
	if(!empty($EMBALLAGE)){
		$_SESSION['emb']=$EMBALLAGE;
		$_SESSION['cont']=$CONTENANT;
		header ("Location: Conditionnement.php");

	
	}	
}
[/php]