Aide sur php/Mysql

maxireussite Messages postés 405 Statut Membre -  
Chris 94 Messages postés 1937 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour à tous,

je m'arrache les cheveux avec le problème php/mYsql qui suit. N'y connaissant pas grand chose (rien), je suis prêt à payer pour être aidé.

Le problème est le suivant :

Après avoir envoyer leur formulaire nom-adresse-mail, je souhaite une réponse automatique qui génère un code client composé :

- des 3 1ères lettre du code postal
- et du numéro d'incrément de la table.

ce qui donnerait code client : 765 - 0001 (pour 76500 Elbeuf sur Seine)

Toutes aides gratuites ou payantes sont acceptées.

Merci d'avance

6 réponses

  1. Tomy2e Messages postés 1041 Statut Membre 864
     
    Bonjour, ce que vous dîtes est tout à fait réalisable, mais dans votre formulaire, avez-vous un champs dédié pour le code postal ?
    0
  2. maxireussite Messages postés 405 Statut Membre 5
     
    Bjr,

    Voici mon script à la base.

    <?php
    if(isset($_POST['type_reexpedition'])) $type_reexpedition=$_POST['type_reexpedition'];
    else $type_reexpedition="";

    if(isset($_POST['emballage'])) $emballage=$_POST['emballage'];
    else $emballage="";

    if(isset($_POST['titre'])) $titre=$_POST['titre'];
    else $titre="";

    if(isset($_POST['nom'])) $nom=$_POST['nom'];
    else $nom="";

    if(isset($_POST['prenom'])) $prenom=$_POST['prenom'];
    else $prenom="";

    if(isset($_POST['adresse1'])) $adresse1=$_POST['adresse1'];
    else $adresse1="";

    if(isset($_POST['adresse2'])) $adresse2=$_POST['adresse2'];
    else $adresse2="";

    if(isset($_POST['cp'])) $cp=$_POST['cp'];
    else $cp="";

    if(isset($_POST['ville'])) $ville=$_POST['ville'];
    else $ville="";

    if(isset($_POST['telephone'])) $telephone=$_POST['telephone'];
    else $telephone="";

    if(isset($_POST['email'])) $email=$_POST['email'];
    else $email="";

    // On vérifie si les champs sont vides
    if(empty($titre) OR empty($nom) OR empty($prenom) OR empty($adresse1) OR empty($cp) OR empty($ville) OR empty($telephone) OR empty($email))
    {
    echo '<font color="red">Attention, seul le champs <b>Adresse suite</b> peut rester vide !</font>';
    }
    // Aucun champ n'est vide, on peut enregistrer dans la table
    else
    {
    $db = mysql_connect('localhost', 'root', ''); // connexion à la base
    mysql_select_db('outremer',$db); // sélection de la base

    // on regarde si l'url existe déjà
    $sql = "SELECT client_id FROM oc_clients WHERE email='$email'";
    $req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

    // on compte le nombre de résultats
    $res = mysql_num_rows($req);

    if($res!=0){ // l'url existe déjà, on affiche un message d'erreur

    echo '<font color="red">Attention, votre <b>email</b> existe déjà dans notre base !</font>';
    }
    else{
    echo '<font color="green">Votre demande est enregistrée, vous allez recevoir dans moins de 24h un mail avec votre code d\'expédition et des instructions. Merci.</p>';
    } $sql = "INSERT INTO oc_clients(client_id, titre, nom, prenom, adresse1, adresse2, cp, ville, telephone, email) VALUES('','$titre','$nom','$prenom','$adresse1','$adresse2','$cp','$ville','$telephone','$email')";
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

    // on récupère l'id_site qui vient d'être généré
    $client_id = mysql_insert_id();

    // ci-dessous on insère les infos dans oc_choix
    $sql = "INSERT INTO oc_choix(choix_id, type_reexpedition, emballage, client_id) VALUES('','$type_reexpedition','$emballage','$client_id')";
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
    }

    ?>
    0
    1. Tomy2e Messages postés 1041 Statut Membre 864
       
      Ok, je vais essayer de coder ça puis je vous recontacte par message privé.
      0
  3. maxireussite Messages postés 405 Statut Membre 5
     
    Merci bcp.
    0
  4. Chris 94 Messages postés 1937 Date d'inscription   Statut Modérateur Dernière intervention   7 536
     
    Bonsoir,

    Rappel au passage : le but des forums de CCM est d'apporter une aide gratuite à qui en a besoin. Toute demande de payement sera impitoyablement réprimée.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. maxireussite Messages postés 405 Statut Membre 5
     
    Sorry,

    Je fais comment pour modifier le titre alors ?
    0
  7. Chris 94 Messages postés 1937 Date d'inscription   Statut Modérateur Dernière intervention   7 536
     
    Modifier le titre ? Bin, pourquoi ? ;-D
    0