Haaa j'y suis arrivé enfin bon faut dire que ça fais un moi que je m'y etait pas remi vu que je travaillais sur un autre site que vous pouvez aller voir
iciMais revenons à nos moutons la soluce donc pour pouvoir avoir la meme bdd utilisateur entre le site et le module oscommerce ce qui evite la double inscription à nos cher client est :
<html>
<head>
<script language="javascript" type="text/javascript">
function Controle ()
{
if (document.register.pseudo.value =="")
{
alert ("Vous devez entrer votre pseudo SVP");
document.register.pseudo.focus();
return false;
}
else if (document.register.prenom.value =="")
{
alert ("Vous devez entrer votre prenom SVP");
document.register.prenom.focus();
return false;
}
else if (document.register.nom.value =="")
{
alert ("Vous devez entrer votre nom SVP");
document.register.nom.focus();
return false;
}
else if (document.register.mail.value =="")
{
alert ("Vous devez entrer votre E-mail SVP");
document.register.mail.focus();
document.register.mail.select();
return false;
}
else if (document.register.tel.value=="")
{
alert ("Vous devez entrez votre numéro de téléphone SVP");
document.register.tel.focus();
document.register.tel.select();
return false;
}
else if (isNaN (document.register.tel.value))
{
alert ("Votre numéro de telephone ne dois comporter que des chiffres");
document.register.tel.focus();
document.register.tel.select();
return false;
}
else if(document.register.tel.value.length != 10)
{
alert ("Votre numéro de telephone dois comporter 10 chiffres");
document.register.tel.focus();
document.register.tel.select();
return false;
}
else if (document.register.adr.value =="")
{
alert ("Vous devez entrer votre adresse postale SVP");
document.register.adr.focus();
document.register.adr.select();
return false;
}
else if (document.register.Cpost.value=="")
{
alert ("Vous devez entrer votre code postale SVP");
document.register.Cpost.focus();
document.register.Cpost.select();
return false;
}
else if (isNaN(document.register.Cpost.value))
{
alert ("Le code postale ne doit comporter que des chiffres");
document.register.Cpost.focus();
document.register.Cpost.select();
return false;
}
else if(document.register.Cpost.value.length != 5)
{
alert ("Le code postal doit comporter 5 chiffres");
document.register.Cpost.focus();
document.register.Cpost.select();
return false;
}
else if (document.register.ville.value=="")
{
alert ("Vous devez entrer votre le nom de votre ville SVP");
document.register.ville.focus();
document.register.ville.select();
return false;
}
else if (document.register.region.value == "")
{
alert ("vous devez entrez votre region SVP");
document.register.region.focus();
document.register.region.select();
return false;
}
else if (document.register.pays.selectedIndex == "")
{
alert ("vous devez choisir votre pays SVP");
document.register.pays.focus();
return false;
}
else if (document.register.pass.value == "")
{
alert ("vous devez entrez votre mot de passe SVP");
document.register.pass.focus();
document.register.pass.select();
return false;
}
else if (document.register.vpass.value == "")
{
alert ("vous devez confirmer votre mot de passe SVP");
document.register.vpass.focus();
document.register.vpass.select();
return false;
}
else if (document.register.pass.value!=document.register.vpass.value)
{
alert("la confirmation du mot de passe est incorecte veuillez retapper vos mots de passe svp");
document.register.pass.value="";
document.register.vpass.value="";
document.register.pass.focus();
return false;
}
else
{
return verifMail(document.register.mail.value);
}
}
function verifMail(a)
{
testm = false;
for (var j=1; j<(a.length); j++)
{
if (a.charAt(j)=='@')
{
if (j<(a.length-4))
{
for (var k=j ; k<(a.length-2) ; k++)
{
if (a.charAt(k)=='.')
{
testm = true;
}
}
}
}
}
if (testm==false)
{
alert('Votre adresse e-mail est incorrecte elle doit être du type:\n'+'
pseudo@xx.xx.');
document.register.mail.focus();
document.register.mail.select();
return false;
}
else
{
return true;
}
}
</script>
<style type="text/css">
<!--
.etoile {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
color: #FF0000;
text-decoration: blink;
}
-->
</style>
</head>
<body>
<?php
$xoopsOption['pagetype'] = 'user';
include 'mainfile.php';
include 'header.php';
function antoine_rand($min = null, $max = null) {
static $seeded;
if (!isset($seeded)) {
mt_srand((double)microtime()*1000000);
$seeded = true;
}
if (isset($min) && isset($max)) {
if ($min >= $max) {
return $min;
} else {
return mt_rand($min, $max);
}
} else {
return mt_rand();
}
}
function antoine_encrypt_password($plain) {
$password = '';
for ($i=0; $i<10; $i++) {
$password .= antoine_rand();
}
$salt = substr(md5($password), 0, 2);
$password = md5($salt . $plain) . ':' . $salt;
return $password;
}
if(isset($_POST['submitok']))
{
/* connection BDD */
$mysqli = new mysqli("127.0.0.1","root","azertyu", "xoops");
/* debut requete sql pour os commerce */
$requete='SELECT * FROM xoops_shop_customers';
$result = $mysqli->query($requete);
while ($row = $result->fetch_array(MYSQLI_ASSOC))
{
$tab['customers_id'][] = $row['customers_id'];
}
$total = count($tab['customers_id']);
if (isset($_POST['comp']))
{
$comp = $_POST['comp'];
}
else if (!isset($_POST['comp']))
{
$comp = "";
}
if (isset($_POST['sct']))
{
$sct = $_POST['sct'];
}
else if (!isset($_POST['sct']))
{
$sct = "";
}
/* fin requete sql pour os commerce */
/* debut requete sql pour xoops */
$requete2 = 'SELECT * FROM xoops_users';
$result2 = $mysqli->query($requete2);
while ($row2 = $result2->fetch_array(MYSQLI_ASSOC))
{
$tab2['uid'][] = $row2['uid'];
$tab2['user_regdate'][] = $row2['user_regdate'];
}
$total2 = count($tab2['uid']);
/* fin requete sql pour xoops */
/*debut variable oscommerce*/
$genre = $_POST['genre'];
$pseudo = $_POST['pseudo'];
$prenom = $_POST['prenom'];
$nom = $_POST['nom'];
$mail = $_POST['mail'];
$tel = $_POST['tel'];
$adr = $_POST['adr'];
$Cpost =$_POST['Cpost'];
$ville = $_POST['ville'];
$region = $_POST['region'];
$pays = $_POST['pays'];
$passwordtmp = $_POST['pass'];
$password = antoine_encrypt_password($passwordtmp);
$default = $tab['customers_id'][$total-1];
$adress_id = $default+1;
$dob = "0000-00-00";
$zone = "0";
$fax = "0000000000";
/*fin variable pour oscommerce*/
/*debut variable pour xoops*/
$uname = $_POST['pseudo'];
$mail2 = $_POST['mail'];
$avatar = "blank.gif";
$user_regdate = (($tab2['user_regdate'][$total2-1])+1);
$user_from = $_POST['ville'];
$user_sig = $_POST['pseudo'];
$user_viewemail = "1";
$password2 = md5($passwordtmp);
$post ="0";
$attachsig = "0";
$rank = "0";
$level = "1";
$timezone_offset = "1.0"; //gmt +1
$lastlog ="0";
$umode = "nest";
$uorder = "0";
$notify_method = "1";
$notify_mode = "0";
$bio = " ";
$user_mailok = "1";
$groupid ="2";
$linky = (($tab2['uid'][$total2-1])+1);
/*fin variable pour xoops*/
/*debut insertion sql pour os commerce*/
$mysqli->query("INSERT INTO xoops_shop_customers (customers_gender,customers_firstname,customers_lastname,customers_dob,customers_email_address,customers_telephone,customers_fax,customers_password,customers_default_address_id) values('$genre','$prenom','$nom','$dob','$mail','$tel','$fax','$password','$adress_id')");
$mysqli->query("INSERT INTO xoops_shop_address_book (customers_id,entry_gender,entry_company,entry_firstname,entry_lastname,entry_street_address,entry_suburb,entry_postcode,entry_city,entry_state,entry_country_id,entry_zone_id) values('$adress_id','$genre','$sct','$nom','$prenom','$adr','$comp','$Cpost','$ville','$region','$pays','$zone')");
/*fin insertion sql pour os commerce*/
/* debut insertion sql pour xoops */
$mysqli->query("INSERT INTO xoops_users (uname, email, user_avatar, user_regdate, user_from, user_sig, user_viewemail, pass, posts, attachsig, rank, level, timezone_offset, last_login, umode, uorder, notify_method, notify_mode, bio, user_mailok) values ('$uname', '$mail2', '$avatar', '$user_regdate', '$user_from', '$user_sig', '$user_viewemail', '$password2', '$post', '$attachsig', '$rank', '$level', '$timezone_offset', '$lastlog', '$umode', '$uorder', '$notify_method', '$notify_mode', '$bio', '$user_mailok')");
$mysqli->query("INSERT INTO xoops_groups_users_link (groupid,uid) values ('$groupid','$linky')");
/* fin insertion sql pour xoops */
echo "Merci pour votre inscription ".$prenom." ".$nom."<br><br> Votre pseudo est : ".$uname." et votre mot de passe est : ".$passwordtmp." Votre email est : ".$mail." :)";
echo "<BR><br><br><h3>IMPORTANT</h3><br>Pour vous connecter au site Internet, munissez vous de votre pseudo et de votre mot de passe.<br>Pour accéder à la boutique saisissez votre email et votre mot de passe.";
echo "<br><br>Cordialement l'équipe P2P INFORMATIQUE";
}
else {?>
<form name="register" method="post" onSubmit="return Controle();" >
<table border="1">
<td>Vous êtes </td><td>un homme : <input type="radio" name="genre" checked value="m"> une femme : <input type="radio" name="genre" value="f"></td></tr>
<tr>
<td>Votre pseudo : </td><td><input type="text" name="pseudo" value=""><span class="etoile">*</span></td></tr>
<tr>
<td>Votre prenom : </td><td><input type="text" name="prenom" value=""><span class="etoile">*</span></td></tr>
<tr>
<td>Votre nom : </td><td><input type="text" name="nom" value=""><span class="etoile">*</span></td></tr>
<tr>
<td>Votre E-mail : </td><td><input type="text" name="mail" value="" /><span class="etoile">*</span></td></tr>
<tr>
<td>Votre telephone : </td><td><input type="text" name="tel" value=""><span class="etoile">*</span></td></tr>
<tr>
<td>Votre adresse : </td><td><input type="text" name="adr" value=""><span class="etoile">*</span></td></tr>
<tr>
<td>Complement adresse : </td><td><input type="text" name="comp" value=""></td></tr>
<tr>
<td>Votre societé : </td><td><input type="text" name="sct" value="" /></td></tr>
<tr>
<td>Votre code postale : </td><td><input type="text" name="Cpost" value=""><span class="etoile">*</span></td></tr>
<tr>
<td>Votre ville : </td><td><input type="text" name="ville" value=""><span class="etoile">*</span></td></tr>
<tr>
<td>Votre Région : </td><td><input type="text" name="region" value="" /><span class="etoile">*</span></td></tr>
<tr>
<td>Votre pays : </td><td><select name="pays">
<option value=" "> </option>
<option value="240">France</option>
<option value="241">Etranger</option>
</select><span class="etoile">*</span></td></tr>
<tr>
<td>Votre mot de passe : </td><td><input type="password" name="pass" value="" /><span class="etoile">*</span></td></tr>
<tr>
<td>Confirmez mot de passe : </td><td><input type="password" name="vpass" value="" /><span class="etoile">*</span></td></tr>
<tr>
<td><input type="submit" name="submitok" value="ENVOI"></td></tr>
</table>
</form>
<?php }
include 'footer.php';
?>
</body>
</html>
Bon ok c'est long mais ça vaut le coup :)
Fais 100% Maison
N'ésitez pas à me laisser des suggestions pour l'ameliorer