Petit probleme de conditions

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 : Petit probleme de conditions

Re: Petit probleme de conditions

par jojolapine » 11 août 2010, 20:44

C'est courageux AB de donner une piste sans prémacher la solution...
Bel effort!
Bref, bonne chance dans la vie Ethan00026, ne te foule surtout pas trop de neurones, laisse les autres le faire pour toi!
T'auras de la réserves comme ça ;)
Au plaisir!

Re: Petit probleme de conditions

par AB » 11 août 2010, 20:14

Bonjour, si j'ai posté ce probleme c'est pas pour venir apprendre ou etre mis sur la voie etc...
Je comprends tres bien ce code mais il y a une erreur et je trouve pas ou elle se trouve
Et ce n'est pas ce isset qui en ai la cause car les entree rentrent bien dans ma bdd.
Donc le probleme se trouve quelque part dans ces conditions qui ne s'execute pas...

Je ne comprend pas pourquoi lorsqu'on demande de l'aide il y en a toujours pour vous critiquer sur votre francais, orthographe, ou se bloque sur une ligne qui ne sert a rien ou a essayer de faire deviner une reponse...
Jsais pas a chaque qu'on vient dans la section debutant c'est la meme chose... J'aurai du switcher en "avancee"

Et non je suis pas debile, j'ecris sans accent parce que je tape vite sur mon ipad donc voila.
Houlà ! si tu ne veux rien apprendre... ça m'étonnerais que tu avances...

Bon même si ce n'est pas le isset qui est la cause du problème que tu décris, n'empêche que jojolapine à mis le doigt sur une erreur dans ton code. Si tu testes les lignes suivantes :
$var = 12;
 if(isset($var) == 15) echo 'yes';else echo 'no';
cela va retourner 'yes'

Pour être cohérent il faudrait écrire :
$var = 12;
 if(isset($var) && $var == 15) echo 'yes';else echo 'no';
mais bon si tu ne veux rien apprendre...

Pour la question de tes conditions qui sont sautées ou plus exactement si tes header ne fonctionnent pas, c'est qu'il manque quelque chose à la suite du header pour que cela fonctionne. Ce quelque chose est mentionné et expliqué dans le second exemple du paragraphe "Liste de paramètres" de ce lien :)

Re: Petit probleme de conditions

par Invité » 11 août 2010, 18:45

C'est pas pour etre mechant ou insultant mais bon ca enerve quand on tourne autour du pot.
Quand je veux aider un gars moi je poste le probleme, il me remerci et voila basta, jsuis pas la pour me faire passer pour un professeur...

Re: Petit probleme de conditions

par Invité » 11 août 2010, 18:43

Bonjour, si j'ai posté ce probleme c'est pas pour venir apprendre ou etre mis sur la voie etc...
Je comprends tres bien ce code mais il y a une erreur et je trouve pas ou elle se trouve
Et ce n'est pas ce isset qui en ai la cause car les entree rentrent bien dans ma bdd.
Donc le probleme se trouve quelque part dans ces conditions qui ne s'execute pas...

Je ne comprend pas pourquoi lorsqu'on demande de l'aide il y en a toujours pour vous critiquer sur votre francais, orthographe, ou se bloque sur une ligne qui ne sert a rien ou a essayer de faire deviner une reponse...
Jsais pas a chaque qu'on vient dans la section debutant c'est la meme chose... J'aurai du switcher en "avancee"

Et non je suis pas debile, j'ecris sans accent parce que je tape vite sur mon ipad donc voila.

Re: Petit probleme de conditions

par dev3 » 10 août 2010, 08:51

Bonjour,

Bon comme jojolapine essaye de te mettre sur la voie avec pedagogie et sans te mettre directement la solution :wink:
un 2ième indice http://php.net/manual/fr/function.isset.php ...

Re: Petit probleme de conditions

par jojolapine » 09 août 2010, 17:23

Bonjour,

Je voudrais le détail, du genre:

Code : Tout sélectionner

SI l'entrée "submit" du tableau $_POST est définie ET etc....
Pour que tu comprennes ce qui est écrit.

Re: Petit probleme de conditions

par Invité » 09 août 2010, 17:14

Cette ligne sert a verifier que les informations transmises en "post" proviennent bien de ma page d'inscription.

Re: Petit probleme de conditions

par jojolapine » 09 août 2010, 12:35

Bonjour,
peux tu m'expliquer en bon français ( avec des phrases quoi... ) ce que veut dire ceci:
if( (isset($_POST['submit'])) and (isset($_POST['register_data']) == "DC(*@^i7dxc9w26er0@"))

Petit probleme de conditions

par Ethan00026 » 09 août 2010, 10:57

Bonjour !

Je suis en train de develloper la partie d"inscription des membres sur mon site internet mais je fais face a un probleme.
Ce dernier se situe au moment ou mon script verifie les champs d'inscription, et check si les email sont valides etc...
le script est constitue d'une suite de conditions mais voici mon probleme : toute celles ci sont litteralement sautee pendant l'execution !
comment faire ?

voici le script, je precise qu'il ny a pas de pb de connection avec la bdd, ni de probleme avec le formulaire. En effet, les inscriptions se rajoutent correctement a la bdd mais meme quand les conditions ne sont pas verifiee ! se qui rend ce script inutile...

Je vous remercie d'avance !
<?php
// Start session
session_start();

ob_start();
require("defines/constants.inc"); // Constants
require("includes/functions.inc"); // Functions
require("includes/DbConn/libphp.DbConnect.0-1.inc"); // Database Connection Class
require("includes/query/libphp.MysqlQuery.0-1.inc"); // Query Class



// Check if submit is enabled, and $_POST[register_data] is true
 if( (isset($_POST['submit'])) and (isset($_POST['register_data']) == "DC(*@^i7dxc9w26er0@"))
 {
      // Store values, do checks
      /*
	  Html Field Value -> Required name for input tag
	  
	  eg. <input type="textbox" id="user_name" name="user_name" value ="" />
	  
	  User Name = user_name Must be between 
	  First Name = first_name
	  Last Name = last_name
	  Country = user_country
	  Email = user_email,user_email2     
	  password = user_password
	  paypal_email = user_paypal
      
	  
      */
      
      try
      {
       // START TRY
       
      $user_name = escape($_POST['user_name']);
      $first_name = escape($_POST['first_name']);
      $country = escape($_POST['user_country']);
      $user_email = escape($_POST['user_email']);
      $user_email2 = escape($_POST['user_email2']);
      $password = $_POST['user_password'];
      $password2 = $_POST['user_password2'];

      // Check for val and value
      if( (isset($_POST['__val_$option_242'])) and ($_POST['__val_$option_242'] == "983c(DAJD(@X)@@E287462") )
      {
	  $user_email2 = $user_email;
      }

      // Password check
      if( (isset($_POST['__val_$option_243'])) and ($_POST['__val_$option_243'] == "983c(DAJD(@X)@@E287462") )
      {
	  $password2 = $password;
      }

      // Check username for length and that it exists
      if( (strlen($user_name) < USERNAME_MIN_CHARACTERS) or (strlen($user_name) > USERNAME_MAX_CHARACTERS) )
      {
	  // Invalid user name, too long or short
	  header("Location: signup_d.php?e=0");
      }
      
      // Check email for validity
      if( (!(eregi('^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$', $user_email)) ) )
      {
	  // Invalid email address
	  header("Location: signup_d.php?e=1");
      }
      
      // Check Password
      if( (strlen($password) < PASSWORD_MIN_CHAR) or (strlen($password) > PASSWORD_MAX_CHAR) )
      {
	  // Invalid Password
	  header("Location: signup_d.php?e=3");  
      }
      
      // Make sure email1 and email2 match
      if($user_email != $user_email2)
      {
	  // Email addresses do not match
	  header("Location: signup_d.php?e=4");
      }
      
      // If passwords match
      if($password != $password2)
      {
	  // Passwords do not match
	  header("Location: signup_d.php?e=5");
      }
      
      // hash password
      $password = md5($password);

      // Open connection to the database
      $conn = MysqlConnect::connect();
      MysqlConnect::db_use($conn, "testing_url4cash");
      
      // Open new instance of the query class
      $query = new MysqlQuery($conn);
      
      // Check for email already in DB
      $qmail = $query->ccount('dif_users','user_email',true,"WHERE user_email = '{$user_email}'");

      // Check for errors
      if($qmail === -1)
      {
	  // Error, redirect
	  header("Location: signup_d.php?e=8");
      }
      else if($qmail > 0)
      {
	  // User already exists
	  header("Location: signup_d.php?e=9");
      }

      $qstr = "INSERT INTO dif_users(user_name,first_name,user_email,user_password,country) VALUES('$user_name','$first_name','$user_email','$password','$country');";
      
      // Send query, check return value
      if( ($query->SendSingleQuery($qstr)) == -1)
      {
	  // Error happened 
	  header("Location: signup_d.php?e=6");
      }
      else
      {
	  // All good
	  header("Location: signup_d_success.php");
      }
      
      // END TRY
      }
      catch(Exception $e)
      {
	  header("Location: signup_d.php?e=7");
      }
      
 }
 else
 {
      // Redirect to home page, as this page should not be accessed unless post session
      header("Location: index.php");
 }
 
 ob_end_flush();

 ?>