inserer une date

Eléphanteau du PHP | 26 Messages

22 janv. 2012, 22:15

merci sa marche mais se que je voulais faire s'est d'enregistrer la date d'inscription dans ma base de donnée pour l'afficher après dans son profil

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

22 janv. 2012, 22:18

$sql = "INSERT INTO membre(login,date) VALUES('Mateo', NOW())";

$sql = "INSERT INTO membre(login,date) VALUES('" . mysql_escape_string($_POST['login']) ."', NOW())";
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphanteau du PHP | 26 Messages

22 janv. 2012, 22:38

ok mais comment on fait pour actualiser l'heure automatiquement (qu'a chaque minutes passé il l'affiiche)

Eléphanteau du PHP | 26 Messages

22 janv. 2012, 22:45

merci tout le monde . j'ai réussis grâce à votre aide et voici le code
 <?php
 $_SESSION['login'] = $_POST['login'];
 ?>
<?php
         $base = mysql_connect ('localhost', 'root', '');
                          mysql_select_db ('espace_membre', $base);
$sql = "INSERT INTO membre(login,date_inscription) VALUES('" . mysql_escape_string($_POST['login']) ."', NOW())";
          mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
         ?>
<head>
<title>créer un dossier de groupe</title>
</head>
creation d'un dossier de groupe:<br />
<form action="dd.php" method="post">
<input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
<input type="submit" name="groupe" value="ok">
</form>

mais si on peux me dire comment faire pour afficher l'heure en continue avec le code de Full-DOS sa serai sympa

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

22 janv. 2012, 23:35

salut,

il faut t'orienter vers une solution javascript.

@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 26 Messages

23 janv. 2012, 09:27

ok merci

Mammouth du PHP | 2278 Messages

23 janv. 2012, 09:40

En scindant la syntaxe, on y gagnerait sans doute:
 $sql = "INSERT INTO membre(login,date) VALUES("mysql_escape_string.($_POST['login']" NOW())"
deviendrait:
$login_entre =mysql_escape_string($_POST['login']); 
$sql = "INSERT INTO membre(login,date) VALUES('$login_entre', NOW())";
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Eléphanteau du PHP | 26 Messages

23 janv. 2012, 17:16

bonjour j'ai encore un petit soucis easyPHP m'affiche
Parse error: syntax error, unexpected T_VARIABLE in C:\Program Files\EasyPHP-5.3.8.1\www\Espace_Membre\dd.php on line 9
alors si vous pouvez m'aider ça serai sympa (oui je suis un débutant et j''ai vraiment du mal a faire des choses nouvelles :oops:
voici le code
	 <?php
	 $_SESSION['login'] = $_POST['login'];
	 ?>
	<?php
			 $base = mysql_connect ('localhost', 'root', '');
							  mysql_select_db ('espace_membre', $base);
							  $login_entre =mysql_escape_string($_POST['login']); 
							  $pass =mysql_escape_string(md5($_POST['pass_md5'])
$sql = "INSERT INTO membre(login,date_inscription,pass_md5) VALUES('$login_entre','$pass', NOW())";
			  mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
			 ?>
	<head>
	<title>créer un dossier de groupe</title>
	</head>
	Inscription à l'espace membre :<br />
<form action="d.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass_md5" value="<?php if (isset($_POST['pass_md5'])) echo htmlentities(trim($_POST['pass_md5'])); ?>"><br />
Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
<input type="submit" name="inscription" value="Inscription">
	 <?php
	 $_SESSION['login'] = $_POST['login'];
	 ?>
	<?php
			 $base = mysql_connect ('localhost', 'root', '');
							  mysql_select_db ('espace_membre', $base);
							  $login_entre =mysql_escape_string($_POST['login']); 
							  $pass =mysql_escape_string(md5($_POST['pass_md5'])
$sql = "INSERT INTO membre(login,date_inscription,pass_md5) VALUES('$login_entre','$pass', NOW())";
			  mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
			 ?>
	<head>
	<title>créer un dossier de groupe</title>
	</head>
	Inscription à l'espace membre :<br />
<form action="d.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass_md5" value="<?php if (isset($_POST['pass_md5'])) echo htmlentities(trim($_POST['pass_md5'])); ?>"><br />
Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
<input type="submit" name="inscription" value="Inscription">

ViPHP
xTG
ViPHP | 7331 Messages

23 janv. 2012, 17:47

Il manque un point virgule à la fin de la ligne définissant $pass.

Eléphanteau du PHP | 26 Messages

23 janv. 2012, 19:09

     <?php
          $_SESSION['login'] = $_POST['login'];
          ?>
         <?php
                        $base = mysql_connect ('localhost', 'root', '');
                            mysql_select_db ('espace_membre', $base);
                            $login_entre =mysql_escape_string($_POST['login']); 
                            $pass =mysql_escape_string(md5($_POST['pass_md5']);
$sql = "INSERT INTO membre(login,date_inscription,pass_md5) VALUES('$login_entre','$pass', NOW())";
                           mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
                          ?>
         <head>
         <title>créer un dossier de groupe</title>
         </head>
         Inscription à l'espace membre :<br />
 <form action="d.php" method="post">
 Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
 Mot de passe : <input type="password" name="pass_md5" value="<?php if (isset($_POST['pass_md5'])) echo htmlentities(trim($_POST['pass_md5'])); ?>"><br />
 Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
 <input type="submit" name="inscription" value="Inscription">
  
je l'est fais mais ça ne marche pas

ViPHP
xTG
ViPHP | 7331 Messages

23 janv. 2012, 19:51

Ton code d'insertion n'est pas soumis à condition.
Donc il est exécuté même si ton formulaire n'est pas posté.

Il faut ajouter une condition :
<?php
if( !empty($_POST) ){ // le formulaire n'est pas vide
  // on fait notre insertion
}

Eléphanteau du PHP | 26 Messages

23 janv. 2012, 20:10

<?php
          $_SESSION['login'] = $_POST['login'];
          ?>
		 <?php
if( !empty($_POST) ){ // le formulaire n'est pas vide
  
                        $base = mysql_connect ('localhost', 'root', '');
                            mysql_select_db ('espace_membre', $base);
                           $login_entre =mysql_escape_string($_POST['login']); 
$sql = "INSERT INTO membre(login,date) VALUES("mysql_escape_string($_POST['login']),mysql_escape_string(md5($_POST['pass']))" NOW())";
                           mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
                      
}
    ?>
     <head>
         <title>créer un dossier de groupe</title>
         </head>
         Inscription à l'espace membre :<br />
 <form action="d.php" method="post">
 Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
 Mot de passe : <input type="password" name="pass_md5" value="<?php if (isset($_POST['pass_md5'])) echo htmlentities(trim($_POST['pass_md5'])); ?>"><br />
 Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
 <input type="submit" name="inscription" value="Inscription">
  
j'ai fais comme ça sauf que sa n'a rien changé

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

23 janv. 2012, 20:47

Si tu prends l'habitude de fermer les parenthèse et les accolades au moment où tu les ouvres, tu éviteras bien des erreurs :)
$pass =mysql_escape_string(md5($_POST['pass_md5']);
                          (   (                  )
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphanteau du PHP | 26 Messages

24 janv. 2012, 17:39

j'ai fais comme ça m'affiche
Parse error: syntax error, unexpected T_VARIABLE in F:\PortableZMWS\ZMWS\_web.zmwsc\Espace_Membre\dd.php on line 7
si vous pouvez encore m'aider sa serai sympa
<?php
          $_SESSION['login'] = $_POST['login'];
          ?>
		 <?php
                        $base = mysql_connect ('localhost', 'root', '');
                            mysql_select_db ('espace_membre', $base);
							$sql = "INSERT INTO membre VALUES("$_POST['login'],md5($_POST['pass_md5'])", NOW())";
							mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
  ?>
<head>
         <title>créer un dossier de groupe</title>
         </head>
         Inscription à l'espace membre :<br />
 <form action="inscription.php" method="post">
 Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
 Mot de passe : <input type="password" name="pass_md5" value="<?php if (isset($_POST['pass_md5'])) echo htmlentities(trim($_POST['pass_md5'])); ?>"><br />
 Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
 <input type="submit" name="inscription" value="Inscription">

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

24 janv. 2012, 20:41

Bon... on va reprendre le cours sur les chaines et la concaténation :)

Ta requête SQL, c'est une chaine de caractères que tu envois à MySQL pour qu'il puisse l'exécuter (et si la syntaxe est correcte, ça peut même avoir des effets sympa ;))

Ton objectif, est donc de construire la chaine que tu vas transmettre à MySQL. Pour cela, tu saisir directement une chaine de caractère. Ou éventuellement deux chaines de caractères que tu vas concaténer avec l'opérateur " . " (point). Ou encore un chaine que tu vas concaténer avec une variable ... bref, plein de combinaisons possibles. Cependant une variable, c'est une variable, et une chaine, c'est une chaine. Si tu délimites ta chaines n'importe comment, php sera incapable de savoir où elle commence, où elle s'arrête, ou comment il doit l'interpréter.

Donc commençons par la requête que tu veux exécuter :
INSERT INTO membre VALUES('monLogin', md5('monMotDePasse'), NOW())
On va la transformer en chaine php, pour ça, c'est simple, on colle des guillemets ou des apostrophes autour.
// avec des guillemets
$sql = " INSERT INTO membre VALUES('monLogin', md5('monMotDePasse'), NOW()) ";
// avec des apostrophes (attention, comme notre chaine contient déjà des apostrophes, il faut les protéger : \' )
$sql = ' INSERT INTO membre VALUES(\'monLogin\', md5(\'monMotDePasse\'), NOW()) ';
On va rester sur la version avec guillemets qui est plus facilement lisible et on va diviser la chaine en plusieurs sous chaines que l'on concatène pour obtenir le même résultat :
$sql = " INSERT INTO membre VALUES('" . "monLogin" . "', md5('" . "monMotDePasse" . "'), NOW()) ";
Maintenant il ne nous reste plus qu'à remplacer les chaines que l'on veut par des variables qui contiendront les valeurs que l'on attend :
$sql = " INSERT INTO membre VALUES('" . $_POST['login'] . "', md5('" . $_POST['pass_md5'] . "'), NOW()) ";
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...