IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Formulaire de validation


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Inscrit en
    Août 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Formulaire de validation
    Bonjour,
    je suis un très ancien membres du site developpez, mais j'ai toujours hésiter de m'inscrir et participé dans les forums...

    Bon voila mon premier poste et je suis désolé qu'il soit une demande d'aide à la place d'une participation d'aider les autres .

    Voila j'explique mon problèm:
    J'essaye de fair un formulaire de commande d'un nom de domaine, bon en détaille le formulaire a pour but de fair entré un nom de domaine et le vérifié si il est disponible, le visiteur continu sa commande à l'étape suivante, mais si le nom de domaine est non disponible il reprend le meme page pour essayé à nouveau, voila tous.

    Je vous fourni mon code de la page ou j'ai eux ce problèm:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    <?php
    session_start();
    global $statut;
    //===========================Fonction du nom de domaine================================
        function checkDomain($domain,$server,$findText){
            // Open a socket connection to the whois server
            $con = fsockopen($server, 43);
            if (!$con) return false;
     
            // Send the requested doman name
            fputs($con, $domain."\r\n");
     
            // Read and store the server response
            $response = ' :';
            while(!feof($con)) {
                $response .= fgets($con,128); 
            }
     
            // Close the connection
            fclose($con);
     
            // Check the response stream whether the domain is available
            if (strpos($response, $findText)){
                return true;
            }
            else {
                return false;   
            }
        }
     
        function showDomainResult($domain,$server,$findText){
           if (checkDomain($domain,$server,$findText)){
              echo "<tr><td>Félicitations ! ".$domain." est disponible !</td></tr>";
    		  $statut = 4;
           }
    	   else{ 
    	   		echo "<tr><td>Désolé ! ".$domain." a déjà été enregistré !</td></tr>";
    	   		$statut = 5;
    	   }
        }
     
    	    /*function showDomainResult1($domain,$server,$findText){
           if (checkDomain($domain,$server,$findText)){
    		  	return $statut = 4;
           }
    	   else{
    	   		return $statut = 5;
    	   }
        }*/
    //=======================================================================================
    if(!empty($statut)){
    	switch($statut){
     
    		case 4:{
    			//header('Location: ../page_3/index3.php');
    		}break;
     
    		case 5:{
    			//header('Location: 1/page_2/index2_nd.php');
    		}break;
    	}
    }
    ?> 
     
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Commande Etape 2</title>
    <meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
    <meta name="HandheldFriendly" content="true" />
     
     
    <body>
    <form class="jotform-form" action="index2_nd.php" method="post" name="form_2022530170" id="2022530170" accept-charset="utf-8">
      <input type="hidden" name="formID" value="2022530170" />
      <div class="form-all">
        <ul class="form-section">
          <li id="id_1" class="form-input-wide">
            <div class="form-header-group">
              <h2 id="header_1" class="form-header"> Configuration des produits </h2>
            </div>
          </li>
          <li class="form-line" id="id_3">
            <label class="form-label-left" id="label_3" for="input_3"> Entrer votre nom de domaine<span class="form-required">*</span> </label>
            <div id="id_3" class="form-input">
              <input type="text" class="form-textbox validate[required]" id="input_3" name="domainname" size="50" />
              <input type="checkbox" name="com" checked/>.com
              <br/>
              <h4>
    <?php    
        // The form was submitted
        if (isset($_POST['submitBtn'])){
            $domainbase = (isset($_POST['domainname'])) ? $_POST['domainname'] : '';
            $d_com      = (isset($_POST['com'])) ? 'com' : '';    
     
            // Check domains only if the base name is big enough
            if (strlen($domainbase)>2){
                echo '<table>';
                if ($d_com != '')  
                   showDomainResult($domainbase.".com",'whois.crsnic.net','No match for');
                echo '</table>';
            }
        }
    ?> 
              </h4>
            </div>
          </li>
          <li class="form-line" id="id_2">
            <div id="id_2" class="form-input-wide">
              <div style="margin-left:170px" class="form-buttons-wrapper">
                <button id="input_2" type="submit" name="submitBtn" class="form-submit-button"> Cliquez pour continuer </button>
              </div>
            </div>
          </li>
          <li style="display:none"> Should be Empty:
            <input type="text" name="website" value="" />
          </li>
        </ul>
      </div>
      <input type="hidden" id="simple_spc" name="simple_spc" value="2022530170" />
    </form>
    <pre>
    <?php
    //print_r($_SESSION);
    print_r($_POST);
    echo $statut;
    ?>
    ============
    <?php
    print_r(showDomainResult($domain,$server,$findText,&$statut));
    ?>
    </body>
    </html>
    Et merci d'avance, et une dérnière information, je suis pas un pro dans le php.
    Bonne journée à vous tous

  2. #2
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Points : 470
    Points
    470
    Par défaut
    Ton problème consiste juste à faire une redirection si (checkDomain($domain,$server,$findText)) retourne false où t'as un problème dans le test du domaine ?

    Parce que dans le 1er cas, c'est pas les solutions qui manquent...

    Tu peux faire un echo d'un code javascript qui rechagera automatiquement la page au bout d'un moment :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo '<script language="javascript">
    function ReloadPage() {location.href="./mapage.php";}
    setTimeOut(2000, "ReloadPage"); </script>';
    Tu peux faire une redirection direct en PHP avant d'afficher le message :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header('Location: ./mapage.php');
    et pourquoi pas associer ce message à la page rechargée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    header('Location: ./mapage.php?domaineindispo=1');
    et tu testeras au debut de ta page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if($_GET['domaineindispo'] == 1)
        echo '<center>Domaine indisponible, essayez un autre nom</center>';
    // affichage du formulaire

  3. #3
    Candidat au Club
    Inscrit en
    Août 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Salut,

    Merci pour votre réponse mais j'ai pas bien compris votre proposition...

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/07/2006, 08h22
  2. Réponses: 1
    Dernier message: 04/06/2006, 00h35
  3. Formulaire aligné valide
    Par -DeN- dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 28/11/2005, 23h27
  4. Réponses: 4
    Dernier message: 18/10/2005, 23h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo