I do a form in html for a little website, i want users to subscribe themselves but my PHP control seems to not work and i don't know why!
My javascript control works but PHP doesn't...
Source:
<!-- HTML -->
<form action="InscriptionSucces.html" method="POST" name="Inscription" onSubmit="return verif(this);">
<h2>Identifiants</h2>
<ul>
<li>Pseudo* : <input type="text" name="pseudo" id="pseudo" size="30" /></li>
<li>Mot de passe* : <input type="password" name="pass" id="pass" size="30" /></li>
<li>Veuillez retaper votre mot de passe* : <input type="password" name="pass2" id="pass2" size="30" /></li>
<li>Adresse mail (valide)* : <input type="text" name="mail" id="mail" size="30" value="" />#
<select name="groupe1" id="groupe1">
<option value="0">Selectionnez votre adresse...</option>
<optgroup label="">
<option value="1">hotmail.fr
<option value="2">hotmail.com
<option value="3">gmail.com
<option value="4">laposte.net
</optgroup>
</select>
</li>
<li>Veuillez retaper votre adresse mail* : <input type="text" name="mail_verif" id="mail_verif" size="30" value="" />#
<select name="groupe2" id="groupe2">
<option value="0">Selectionnez votre adresse...</option>
<optgroup label="">
<option value="1">hotmail.fr
<option value="2">hotmail.com
<option value="3">gmail.com
<option value="4">laposte.net
</optgroup>
</select>
</li>
<li>Date de naissance : <input type="text" name="date_naissance" id="date_naissance" size="30" value="" /> <em>(JJ/MM/AAAA)</em></li>
<h5>Les champs signales par * sont obligatoires.</h5>
<li>
<td id="envoyer">
<input type="submit" name="Submit" value="M'inscrire">
</td>
<td id="effacer">
<input type="reset" name="Effacer" >
</td>
</td>
</li>
</form>
Here is my javascript which works:
<script type="text/javascript">
function verif(f)
{
var regnm = /^[a-zàâäéèêëîïôöùûüç0123456789]+((( |-)[a-zàâäéèêëîïôöùûüç]+$)|$)/i;
var regmail = /^[a-z]/i;
if(!regnm.test(f.pseudo.value)) {
alert("Erreur dans la saisie de votre pseudo");
return false;
}
if(!regnm.test(f.pass.value)) {
alert("Erreur dans la saisie de votre mot de passe");
return false;
}
if(f.pass.value != f.pass2.value){
alert("Les mots de passe sont differents");
return false;
}
if(!regmail.test(f.mail.value)){
alert("adresse mail incorrecte");
return false;
}
if(f.mail.value != f.mail_verif.value){
alert("adresses mail differentes");
return false;
}
if (document.getElementById('groupe1').options[0].selected){
alert("Vous avez oublie de mentionner votre adresse mail");
return false;
}
if (document.getElementById('groupe1').value != document.getElementById('groupe2').value){
alert("adresses mail differentes");
return false;
}
return confirm("Vous confirmez l'envoi des donnees?");
}
</script>
PHP Code:
<?php
if(!empty($_POST)) {
$errors = array();
$pseudo=$_POST['pseudo'];
echo $pseudo; // Pseudo
if(!isset($pseudo)){
$errors[] = 'Erreur dans la saisie de votre pseudo';
return false;
} elseif($pseudo == '') {
$errors[] = 'Erreur dans la saisie de votre pseudo';
return false;
}
// Mot de passe
if(!isset($_POST['pass'])){
$errors[] = 'Erreur dans la saisie de votre mot de passe';
} elseif($_POST['pass'] == ''){
$errors[] = 'Erreur dans la saisie de votre mot de passe';
}
// Verif mot de passe
if($_POST['pass2'] =! $_POST['pass']){
$errors[] = 'Les mots de passe sont differents';
} elseif($_POST['mdp_verif'] == ''){
$errors[] = 'Les mots de passe sont differents';
} else if(!isset($_POST['mdp_verif'])){
$errors[] = 'Les mots de passe sont differents';
}
// Adresse mail
if(!isset($_POST['mail'])){
$errors[] = 'Erreur dans la saisie de votre adresse mail';
} elseif($_POST['mail'] == ''){
$errors[] = 'Erreur dans la saisie de votre adresse mail';
}
// Verif adresse mail
if($_POST['mail_verif'] != $_POST['mail']){
$errors[] = 'Les adresses mail sont differentes';
} elseif($_POST['mail_verif'] == ''){
$errors[] = 'Les adresses mail sont differentes';
} else if(!isset($_POST['mail_verif'])){
$errors[] = 'Les adresses mail sont differentes';
}
// Compte les erreurs
if(count($errors) > 0)
{
echo '<ul>' . PHP_EOL;
for($i=0; $i < count($errors); $i++)
echo '<li>'. $errors[$i] .'.</li>' . PHP_EOL;
echo '<ul>';
}
}
?>
Is it an error in my variables?
with $_POST ?
Thx to help :)
I do this and it works fine. Here i give my edited code for your convenience.
<html>
<head>
<title>form</title>
</head>
<body>
<form action="" method="POST" name="Inscription" onSubmit="return verif(this);">
<h2>Identifiants</h2>
<ul>
<li>Pseudo* : <input type="text" name="pseudo" id="pseudo" size="30" /></li>
<li>Mot de passe* : <input type="password" name="pass" id="pass" size="30" /></li>
<li>Veuillez retaper votre mot de passe* : <input type="password" name="pass2" id="pass2" size="30" /></li>
<li>Adresse mail (valide)* : <input type="text" name="mail" id="mail" size="30" value="" />#
<select name="groupe1" id="groupe1">
<option value="0">Selectionnez votre adresse...
<optgroup label="">
<option value="1">hotmail.fr
<option value="2">hotmail.com
<option value="3">gmail.com
<option value="4">laposte.net
</optgroup>
</select>
</li>
<li>Veuillez retaper votre adresse mail* : <input type="text" name="mail_verif" id="mail_verif" size="30" value="" />#
<select name="groupe2" id="groupe2">
<option value="0">Selectionnez votre adresse...
<optgroup label="">
<option value="1">hotmail.fr
<option value="2">hotmail.com
<option value="3">gmail.com
<option value="4">laposte.net
</optgroup>
</select>
</li>
<li>Date de naissance : <input type="text" name="date_naissance" id="date_naissance" size="30" value="" /> <em>(JJ/MM/AAAA)</em></li>
<h5>Les champs signales par * sont obligatoires.</h5>
<li><td id="envoyer">
<input type="submit" name="Submit" value="M'inscrire">
</td>
<td id="effacer">
<input type="reset" name="Effacer" >
</td>
</td></li>
</form>
</body>
<!-- Here is my javascript which works
<script type="text/javascript">
function verif(f)
{
var regnm = /^[a-zàâäéèêëîïôöùûüç0123456789]+((( |-)[a-zàâäéèêëîïôöùûüç]+$)|$)/i;
var regmail = /^[a-z]/i;
if(!regnm.test(f.pseudo.value))
{
alert("Erreur dans la saisie de votre pseudo");
return false;
}
if(!regnm.test(f.pass.value))
{
alert("Erreur dans la saisie de votre mot de passe");
return false;
}
if(f.pass.value != f.pass2.value){
alert("Les mots de passe sont differents");
return false;
}
if(!regmail.test(f.mail.value)){
alert("adresse mail incorrecte");
return false;
}
if(f.mail.value != f.mail_verif.value){
alert("adresses mail differentes");
return false;
}
if (document.getElementById('groupe1').options[0].selected){
alert("Vous avez oublie de mentionner votre adresse mail");
return false;
}
if (document.getElementById('groupe1').value != document.getElementById('groupe2').value){
alert("adresses mail differentes");
return false;
}
return confirm("Vous confirmez l'envoi des donnees?");
}
</script>
-->
<?php if(!empty($_POST))
{
echo '<pre>';
print_r($_POST);
echo '</pre>';
$errors = array();
$pseudo=$_POST['pseudo'];
echo $pseudo;
if(!isset($pseudo)){
$errors[] = 'Erreur dans la saisie de votre pseudo';
return false;
}
elseif($pseudo == ''){
$errors[] = 'Erreur dans la saisie de votre pseudo';
return false;
}
if(!isset($_POST['pass'])){
$errors[] = 'Erreur dans la saisie de votre mot de passe';
}
elseif($_POST['pass'] == ''){
$errors[] = 'Erreur dans la saisie de votre mot de passe';
}
// Verif mot de passe
if($_POST['pass2'] =! $_POST['pass']){
$errors[] = 'Les mots de passe sont differents';
}
elseif($_POST['mdp_verif'] == ''){
$errors[] = 'Les mots de passe sont differents';
}
else if(!isset($_POST['mdp_verif'])){
$errors[] = 'Les mots de passe sont differents';
}
if(!isset($_POST['mail'])){
$errors[] = 'Erreur dans la saisie de votre adresse mail';
}
elseif($_POST['mail'] == ''){
$errors[] = 'Erreur dans la saisie de votre adresse mail';
}
// Verif adresse mail
if($_POST['mail_verif'] != $_POST['mail']){
$errors[] = 'Les adresses mail sont differentes';
}
elseif($_POST['mail_verif'] == ''){
$errors[] = 'Les adresses mail sont differentes';
}
else if(!isset($_POST['mail_verif'])){
$errors[] = 'Les adresses mail sont differentes';
}
// Compte les erreurs
if(count($errors) > 0)
{
echo '<ul>' . PHP_EOL;
for($i=0; $i < count($errors); $i++)
echo '<li>'. $errors[$i] .'.</li>' . PHP_EOL;
echo '<ul>';
}
}
?>
First: PHP code must be enclosed with <?php .. ?> tags.
Second: seems that file you posted here is *.html file. It either needs to be *.php file or have the webserver configured to parse html files as .php
In the form tag you use InscriptionSucces.html. Instead, you must use the name InscriptionSucces.php, and your filename must be InscriptionSucces.php.
When you use any PHP code, you must use the correct start and end syntax: <?php and ?>.
Related
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 5 days ago.
Improve this question
here is my issue.
I made a login page with a variable that counts the number of attempts. This variable increments itself each time the user credentials are wrong.
I use this variable to disable the account if the user tries more than 5 times. Everything works but, if the user goes back to the previous page, he goes back to the last submit and the variable is decremented. With this issue, he can have unlimited attempts if he goes back everytime to the last page.
Can you help me please?
Here is my code.
<?php
// Le nombre de tentatives est placé dans le formulaire en renvoyé en post
if(isset($_POST['failurecount'])) {
$failcount = $_POST['failurecount'];
} else {
$failcount = 1;
}
if(isset($_POST['login_email']) && isset($_POST['mdp'])) {
$login_email = $_POST['login_email'];
$mdp = $_POST['mdp'];
$result = $wpdb->get_results("SELECT login, email, mdp FROM `wp_clients_user` WHERE (`login` = '$login_email' OR `email` = '$login_email') AND actif = 1", ARRAY_A);
if($wpdb->last_error) {
echo 'wpdb error: ' . $wpdb->last_error;
}
if($failcount < 5) {
if(empty($result)) {
$failure = "Erreur, le nom d'utilisateur ou le mot de passe est incorrect, vérifiez les données saisies! Nombre de tentatives : ". $failcount;
$failcount++;
} else {
foreach($result as $row) {
if(password_verify($mdp, $row['mdp'])) {
$_SESSION['login'] = $row['login'];
} else {
$failure = "Erreur, le mot de passe est incorrect, veuillez vérifier le mot de passe saisi! Nombre de tentatives : " . $failcount;
$failcount++;
}
}
}
} else {
// On ne bloque que si le nombre de tentatives est = 5 car sinon, il bloquera tous les comptes qe l'utilisateur entrera après avoir été bloqué
if ($failcount == 5) {
// Si l'utilisateur s'est trompé trop de fois
$failure = "Erreur! Votre compte a été bloqué suite à un trop grand nombre d'échecs!";
$wpdb->query("UPDATE wp_clients_user SET actif = 0 WHERE `login` = '$login_email' OR `email` = '$login_email'", ARRAY_A);
blocked_account($login_email);
$failcount++;
} else { // Si l'utilisateur continue d'essayer de se connecter, on ne fait plus rien (pas de connexion ou de bloquge)
$failure = "Toutes vos prochaines tentatives de connexion ne seront pas prises en compte! Nombre de tentatives : " . $failcount;
$failcount++;
}
?>
<form id="login_form" method="post" onsubmit="return false">
<input type="hidden" name="failurecount" value="<?php if(isset($failcount)){echo $failcount;}else{echo 1;} ?>">
<input id="login_email" name="login_email" type="text" value="<?php echo $login_email; ?>" placeholder="Nom d'utilisateur ou adresse e-mail *">
<input id="mdp" name="mdp" type="password" value="<?php echo $mdp; ?>" placeholder="Mot de passe *">
<p>Mot de passe oublié?</p>
<div>
<input id="showpwd" type="checkbox" onclick="show_password()"><label for="showpwd">Afficher le mot de passe</label>
</div>
<?php
if($failure !== false) {
echo('<p style="color: red;">'.htmlentities($failure)."</p>\n");
}
?>
<div>
<input id="souvenir" type="checkbox"><label for="souvenir">Se souvenir de moi</label>
</div>
<button class="bouton_submit" id="user_send_login" style="background-color:#3498db; color:white; width:100px; height:35px;" onclick="verif_login_form()">Se connecter</button>
</form>
I'm getting troubles with my sign/login phpsystem. I use password_verify() and password_hash() with PASSWORD_BCRYPT option.
I'm probably going wrong in my system.
All that I want is to be able to connect to the member space with a first name, last name and password.
Here is my SQL Table COMPTE
id
nom
prenom
motDePasse
email
telephone
typeUtilisateur
cleMDP
1
uno
test
12345678
1#m.c
012345678
1
$2Ydzn
Here is my php code for my signing system
<?php
/* Connexion à la base de données et gestion des erreurs */
try{
$dbc = new PDO("mysql:host=ckdhjqodomiform.mysql.db;dbname=ckdhjqodomiform;charset=UTF8", "ckdhjqodomiform", "D0miform01");
$dbc->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$dbc->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo 'Échec lors de la connexion : ' . $e->getMessage();
}
/* Déclaration des variables pour la création du compte dans la table COMPTE de la base de données*/
$id += 1;
$nom = $_GET['nom'];
$prenom = $_GET['prenom'];
$motDePasse = $_GET['mdp'];
if(!empty($_GET['email'])) {
$email = $_GET['email'];
} else {
$email = "NULL";
}
$telephone = $_GET['tel'];
switch ($_GET['typeCompte']) {
case "S":
$typeUtilisateur = '1';
break;
case "P":
$typeUtilisateur = '2';
break;
case "E":
$typeUtilisateur = '3';
break;
}
$cryptMDP = password_hash($motDePasse, PASSWORD_BCRYPT);
/* Préparation de la requête pour éviter les injections SQL dans la base de données via les champs de textes des formulaire*/
$requete = $dbc->prepare("INSERT INTO COMPTE(id, nom, prenom, motDePasse, email, telephone, typeUtilisateur, cleMDP) VALUES (:id, :nom, :prenom, :motDePasse, :email, :telephone, :typeUtilisateur, :cleMDP)");
$requete->bindParam(':id', $id);
$requete->bindParam(':nom', $nom);
$requete->bindParam('prenom', $prenom);
$requete->bindParam('motDePasse', $motDePasse);
$requete->bindParam('email', $email);
$requete->bindParam('telephone', $telephone);
$requete->bindParam('typeUtilisateur', $typeUtilisateur);
$requete->bindParam('cleMDP', $cryptMDP);
/*Execution du code et creation du compte dans la table COMPTE */
$requete->execute();
?>
And my php code for the logging system
<?php
/* Connexion à la base de données et gestion des erreurs */
try{
$dbc = new PDO("mysql:host=ckdhjqodomiform.mysql.db;dbname=ckdhjqodomiform;charset=UTF8", "ckdhjqodomiform", "D0miform01");
$dbc->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$dbc->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo 'Échec lors de la connexion : '.$e->getMessage();
}
$sql = "SELECT nom, prenom FROM COMPTE";
$user = $dbc->query($sql);
$username = $user->fetch();
$motDePasse = $_GET['motDePasse'];
$cryptMDP = $dbc->query("SELECT cleMDP FROM COMPTE WHERE nom=".$username['nom']." AND prenom=".$username['prenom']);
$data = $cryptMDP->fetch();
if (password_verify($motDePasse, $data['cleMDP']) == true) {
$loginMessage = "Connexion réussie";
} else {
$loginMessage = "Connexion impossible. Vérifiez vos informations";
}
?>
If you can help/show me how to fix my problem, I'd thank you.
(Sorry for my english)
EDIT:
I'll show my form and my logging system.
loginForm.php
<div class="formulaire">
<form action="./loginCheck.php" method="GET">
<h3>Connectez-vous</h3>
<div class="ligne">
<div class="col25">
<label for="email"><i class="fas fa-at"></i> Adresse email</label>
</div>
<div class="col75">
<input type="text" id="email" name="email" placeholder="ex: monadressemail#mail.com">
</div>
</div>
<div class="ligne">
<div class="col25">
<label for="motDePasse"><i class="fas fa-unlock-alt"></i> Mot de Passe</label>
</div>
<div class="col75">
<input type="password" id="mdp" name="mdp" placeholder="ex: motdepasse123">
</div>
</div>
<div class="ligne">
<div class="col25">
<label for="remember" style="font-size: 80%"><i class="fas fa-user-check"></i> Se souvenir de moi</label>
</div>
<div class="col75">
<label class="switch">
<input type="checkbox"><span class="slider"></span>
</label>
</div>
<div class="ligne">
<button class="valider" type="submit" formaction="./loginCheck.php" formmethod="post"><i class="fas fa-sign-in-alt"></i> Se connecter</button>
</div>
</div>
</form>
<div style="font-size: 50%">Pas encore de compte ? Inscrivez-vous</div>
</div>
loginCheck.php
<?php
/* Connexion à la base de données et gestion des erreurs */
try{
$dbc = new PDO("mysql:host=ckdhjqodomiform.mysql.db;dbname=ckdhjqodomiform;charset=UTF8", "ckdhjqodomiform", "D0miform01");
$dbc->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$dbc->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo 'Échec lors de la connexion : '.$e->getMessage();
}
$requete = $dbc->prepare("SELECT cleMDP FROM COMPTE WHERE email = :email");
$requete->bindParam(':email', $_POST['email']);
$requete->execute();
$ligne = $requete->fetch(PDO::FETCH_ASSOC);
$cryptMDP = $ligne['cleMDP'];
if (password_verify($_POST['motDePasse'], $cryptMDP) == true) {
$loginMessage = "Connexion réussie";
} else {
$loginMessage = "Connexion impossible. Vérifiez vos informations";
}
?>
This question already has answers here:
PHP code is not being executed, but the code shows in the browser source code
(35 answers)
Closed 6 years ago.
I have a problem for a connection page i'm trying to set up, after the connection form, the conditionnal block of code that should verify the info just appear instead of executing. Everything appear after , even the semi-colon and parenthesis that should end the if. What did I do wrong?
<?php
// if ($id!=0) {erreur(ERR_IS_CO)};
if (!isset($_POST['mail']))
{
echo "<form method="post" action="connexion.php">
<fieldset>
<legend>Connexion</legend>
<p>
<label for="mail">Mail :</label><input name="mail" type="text" id="mail" /><br />
<label for="password">Mot de Passe :</label><input type="password" name="password" id="password" />
</p>
</fieldset>
<p><input type="submit" value="Connexion" /></p></form>" ;
}
else
{
$message;
if (empty($_POST['mail']) || empty($_POST['password']) ) //empty space
{
$message = "<p>une erreur s\'est produite pendant votre identification. Vous devez remplir tous les champs</p>
<p>Cliquez ici pour revenir</p>";
}
else //password checker
{
if ( md5($_POST['password']) == 'student') // Student
{
$_SESSION['mail'] = $_POST['mail'];
$_SESSION['id'] = "student";
$message = "<p>Bienvenue student
vous êtes maintenant connecté!</p>" //.$data['Nom']., need to fetch name
<p>Cliquez ici pour revenir à la page d accueil</p>;
}
else // Access denied
{
$message = "<p>Une erreur s\est produite pendant votre identification.<br /> Le mot de passe ou le pseudo
entré n\est pas correct.</p><p>Cliquez ici
pour revenir à la page précédente <br />";
}
$query->CloseCursor();
}
echo $message;
}
?>
Syntax error is reason of showing blank page, use Netbeans or Sublime software helps you and you need concatination or use single quotes inside double quotes
Example
echo "<form method='post' action='connexion.php'>
and also enable your errors to see reason of blank page
I've got two websites with the same content. One is with ".com" and the other one is ".nc".
I've got this php page:
<?php
// si le mot de passe est posté
if(isset($_POST["motpasse"])){
// si la valeur du mot de passe est bien celle qu'il faut
if($_POST["motpasse"] == "pass") {
header ("Location: dernier.php");
exit();
}else {echo "Mauvais mot de passe";}
}
echo ('<p align="center"><font size=6pt>Veuillez saisir
votre mot de passe: <br></p></font>');
echo '<form name="motdepasse" method="post"
action="' . htmlspecialchars($_SERVER['REQUEST_URI']) . '">';
echo ('<p align="center"><input type=password name="motpasse"
size="5" style="height:60px; width:160px" value="" /></p>');
echo ('<p align="center"><input type="submit"
name="action onClick=(this.form)"
style="height:60px; width:160px"value="OK"></p>');
echo '</form>';
?>
Weirdly, the header function is working on the website ".com" but not on the website ".nc"
When I type the password, the header doesn't redirect me on the php page that I've put ("dernier"). Any idea why?
Is correct what JackBauer told you about the headers sent. another solution some nasty is this:
<?php
// si le mot de passe est posté
if(isset($_POST["motpasse"])){
// si la valeur du mot de passe est bien celle qu'il faut
if($_POST["motpasse"] == "pass") {
echo "<meta http-equiv="refresh" content="0;url=dernier.php">";
/*header ("Location: dernier.php"); */
exit();
}else {echo "Mauvais mot de passe";}
}
echo ('<p align="center"><font size=6pt>Veuillez saisir votre mot de passe: <br></p></font>');
echo '<form name="motdepasse" method="post" action="' . htmlspecialchars($_SERVER['REQUEST_URI']) . '">';
echo ('<p align="center"><input type=password name="motpasse" size="5" style="height:60px; width:160px" value="" /></p>');
echo ('<p align="center"><input type="submit" name="action onClick=(this.form)" style="height:60px; width:160px"value="OK"></p>');
echo '</form>';
?>
But maybe the principal thing that is failing in your script is the action in your form.
with firebug review your scaped html code in your client side. (what u r seeing in your browser {font code})
see ya!
session_start(); is the first thing I call. There is no whitespace. Why am I still get this warning?
Screenshots:
Error:
[20-Feb-2014 16:52:32 America/New_York] PHP Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/feyzprod/public_html/expertlookup.ca/index.php:1) in /home/feyzprod/public_html/expertlookup.ca/index.php on line 4
[20-Feb-2014 16:52:32 America/New_York] PHP Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/feyzprod/public_html/expertlookup.ca/index.php:1) in /home/feyzprod/public_html/expertlookup.ca/index.php on line 4
<?php session_start();
require_once('bdservice.php');
$bd = new BDService();
require_once('script.php');
if(!isset($_SESSION['specialiteBD']))
{
$sql = "SELECT * FROM Specialites";
try
{ $resultat = $bd->Select($sql); }
catch(Exception $e)
{ echo $e->getMessage(); }
if(count($resultat) != 0)
{
$newSpec= array();
foreach($resultat as $a)
{
$newSpec[] = utf8_encode($a[1]);
}
$_SESSION['specialiteBD'] = $newSpec;
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Annuaire</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<script src="http://maps.googleapis.com/maps/api/js?libraries=places&sensor=false"></script>
<link rel="stylesheet" href="css/style.css" />
<link rel="stylesheet" href="css/ico.css" />
<script src='js/validation.js'></script>
<script>
function initialize()
{
var input = document.getElementById('where');
var componentRestrictions = {country: 'ca'};
var autocomplete = new google.maps.places.Autocomplete(input);
autocomplete.setComponentRestrictions(componentRestrictions);
}
google.maps.event.addDomListener(window, 'load', initialize);
$(function() {
var availableTags = [];
var ville = [];
var availableTags = <?php echo urldecode(json_encode($_SESSION['specialiteBD'])) ?>;
for(var i = 0; i < availableTags.length; i++)
{
ville.push(decode(availableTags[i]));
}
$( "#what" ).autocomplete({
minLength: 2,
source: function(req, responseFn) {
var re = $.ui.autocomplete.escapeRegex(req.term);
var matcher = new RegExp( "^" + re, "i" );
var a = $.grep( ville, function(item,index){
return matcher.test(item);
});
responseFn( a.slice(0,10));
}
});
});
</script>
</head>
<body>
<?php include_once("analyticstracking.php") ?>
<div class='headerBar'>
<div class='headerContent'>
<div id='logo'><a href='index.php'><img src='images/logo4.png' height='75' width='321' alt="Expert LookUp"/ title="Expert LookUp"/></a></div>
<div id='navLien'>
<table>
<tr>
<td>
<span>
<?php
if(isset($_SESSION['authentification']))
{
echo "<a href='logout.php'>déconnexion</a>
<a href='profil.php' class='blue_Button'>Profil</a>";
}
else
{
echo "<a href='enregistrement.php'>Ajouter votre entreprise</a>
<a href='connexion.php' class='blue_Button'>Connexion</a>";
}
?>
</span>
</td>
</tr>
</table>
</div>
</div>
</div>
<div class='blur'>
<div class='blurContent'>
<div id='left'>
<p>Multiplier votre visibilité sur le web en vous inscrivant gratuitement sur notre moteur de recherche d'entreprise.</p>
<a href='enregistrement.php' class='blue_Button'>S'enregistrer</a>
</div>
<div id='right'>
<form action='search/index.php' method='get'>
<p>Trouvez un entrepreneur pour vos prochains travaux</p>
<div class='iconMan'><input type='text' name='what' id='what' size='40' placeholder="Que recherchez vous ? Ex : Plombier" required title="Veuillez indiquer votre critère de recherche." x-moz-errormessage="Veuillez indiquer votre critère de recherche." /></div><br/>
<?php
if(isset($_SESSION['invalideAdr']))
{
unset($_SESSION['invalideAdr']);
echo "<div class='iconWhere'><input type='text' style=\"border:1px solid red;\" name='where' id='where' size='40' placeholder=\"Impossible de trouver votre adresse !\" required title=\"Veuillez indiquer l\'emplacement de vos travaux.\" x-moz-errormessage=\"Veuillez indiquer l\'emplacement de vos travaux.\" /></div><br/>";
}
else
{
echo "<div class='iconWhere'><input type='text' name='where' id='where' size='40' required title=\"Veuillez indiquer l\'emplacement de vos travaux.\" x-moz-errormessage=\"Veuillez indiquer l\'emplacement de vos travaux.\" /></div><br/>";
}
?>
<div class='radio'>
<input type="radio" id="r1" name="secteur" value='1' />
<label for="r1"><span></span>Résidentiel</label>
<input type="radio" id="r2" name="secteur" value='2' />
<label for="r2"><span></span>Industriel</label>
<input type="radio" id="r3" name="secteur" value='3' checked="checked" />
<label for="r3"><span></span>Les deux</label><br/><br/>
<input type='hidden' name='page' value='1' />
<input type='submit' name='Rechercher' value='Rechercher' class='blue_Button' />
</div>
</form>
</div>
</div>
</div>
<div class='infoContent'>
<div id='info'>
<p>À propos d'Expert Lookup</p>
<span style='font-weight:bold;'>Information</span><br/>
<span>Expert LookUp est un annuaire se concentra principalement sur les entreprises dans le domaine de la construction.</span><br/><br/>
<span style='font-weight:bold;'>La simplicité même !</span><br/>
<span>Vous avez uniquement à choisir quel type d'entreprises/personnes vous recherchez, l'emplacement de votre travaux et le secteur d'activité pour faire votre recherche.
Les résultats de recherches vous seront affichées par ordre de distance et si une entreprise ne se déplace pas jusqu`à chez vous, elle ne sera pas affichée.</span><br/><br/>
<span style='font-weight:bold;'>Validation de la licence RBQ</span><br/>
<span>Nous vérifions directement à partir de la base de données de Gouvernement du Québec pour vérifier la licence RBQ des entreprises enregistrées sur notre annuaires.
Si une entreprise ne dispose pas de licence RBQ valide, cette information vous sera affichée.</span><br/><br/>
</div>
<div id='why'>
<p>Pourquoi s'enregistrer ?</p>
<table>
<tr>
<td><span>Soyez visible partout au Canada, auprès des millions d'internautes !</span></td>
<td><img src='images/blueEarth.png' width='97' height='97' alt='terre' title='terre' /></td>
</tr>
<tr>
<td><span>Expert LookUp est un annuaire entièrement gratuit, aucun frais caché !</span></td>
<td><img src='images/greenMoney.png' width='97' height='97' alt='terre' title='terre' /></td>
</tr>
<tr>
<td><span>Votre inscription prendra moins de 5 minutes, alors qu'attendez-vous ? Vous n'avez rien à perdre !</span></td>
<td><img src='images/clock.png' width='97' height='97' alt='terre' title='terre' /></td>
</tr>
</table>
</div>
</div>
<div class='footerBar'>
<div class='footerContent'>
<a href='contact.php'>Contactez-nous</a><span> | </span>
<a href='enregistrement.php'>Ajouter votre entreprise</a><span> | </span>
<a href='connexion.php'>Connexion</a><span> | </span>
<a href='aide.php'>Aide</a><br/>
<span>© Copyright at ExpertLookUp.ca</span>
</div>
</div>
</body>
</html>
No need to check if your session_start() has already started or not. session_start() will just use the current session if there is one.
PHP Doc:
session_start() creates a session or resumes the current one based on
a session identifier passed via a GET or POST request, or passed via a
cookie.
Link
About the error you're receiving, I'm guessing this is due to the IF-Statement lines above it.
Well, that is probably because you already started session somewhere. I usually made solution by putting # before session_start and error was silent and session also worked.
So, #session_start(); may be solution.