magicjim
Messages postés116Date d'inscriptionvendredi 6 août 2004StatutMembreDernière intervention22 septembre 2005
-
31 mars 2005 à 20:30
magicjim
Messages postés116Date d'inscriptionvendredi 6 août 2004StatutMembreDernière intervention22 septembre 2005
-
1 avril 2005 à 21:00
Salut a tous,
je voudrais mettre a jour ma table avec comme requete :
Si la date du jour ne correspond pas a la date dans la table,
on met à jour la table et la date.
Et si la date correspond a la date dans la table,
on ne met pas a jour la table
Voici la requete que je fé mais cela ne fonctionne pas:
<?php
// Parametres de connexion à la base de données
include "includes/acces.php";
include "includes/functions.inc.php";
$date = date("Y-m-d");
@mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
or die("Impossible de se connecter au serveur de bases de données.");
@mysql_select_db($BD_base)
or die("Impossible de se connecter à la base de données.");
//la requete
$rs=mysql_query("SELECT * FROM table WHERE id='".$_SESSION["membreid"]."'");
$r=mysql_fetch_array($rs);
if(intval($date) <> intval( "". $rs['date'] .""))
{
$requete = "Update table SET nb=3 , date='$date' ".
" WHERE id='".$_SESSION["membreid"]."'";
$result = @mysql_query($requete);
if (!$result) {
echo "Une erreur vient d'être détecté,".
"
".
"signaler le bug".
"
".
"Merci de recommencez ou d' essayez plus tard. ;-)
";
} else {
}
} else {
}
?>
magicjim
Messages postés116Date d'inscriptionvendredi 6 août 2004StatutMembreDernière intervention22 septembre 2005 31 mars 2005 à 21:22
Je viens de trouver une alternative en passant par une requete mysql donc voici se que vient de refaire :
<?php
// Parametres de connexion à la base de données
include "includes/acces.php";
include "includes/functions.inc.php";
@mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
or die("Impossible de se connecter au serveur de bases de données.");
@mysql_select_db($BD_base)
or die("Impossible de se connecter à la base de données.");
$date = date("Y/m/d");
// ici on fait la requete
$requete = "select * from table".
" WHERE date = '$date' and id='".$_SESSION["membreid"]."'";
$result= @mysql_query($requete);
//si ya un resultat a la requete
if (mysql_fetch_object($result)){
// ici mettre le refus pour update
} else{
// update la visite du jour meme $requete "UPDATE table SET date '$date', nb=3 ".
" WHERE id='".$_SESSION["membreid"]."'";
$result= @mysql_query($requete);
if (!$result) {
}else{
//Mettre ici vos données on été mise à jour
JoJo738
Messages postés1267Date d'inscriptionmercredi 7 juillet 2004StatutMembreDernière intervention29 juin 20102 31 mars 2005 à 21:31
Re,
Tu peux optimiser ton code ...
<!--StartFragment --><?php
// Parametres de connexion à la base de données
include 'includes/acces.php';
include 'includes/functions.inc.php';
@mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse) or die('Impossible de se connecter au serveur de bases de données.');
@mysql_select_db($BD_base) or die('Impossible de se connecter à la base de données.');
$date = date('Y/m/d');
// ici on fait la requete
$requete = 'select * from table WHERE date="' . $date . '" and id="' . $_SESSION['membreid'] . '"';
$result= @mysql_query($requete);
//si ya un resultat a la requete
if (mysql_num_rows($result) < 1){
// update la visite du jour meme $requete 'UPDATE table SET date "' . $date . '", nb=3 WHERE id="' . $_SESSION['membreid'] . '"';
$result= @mysql_query($requete);
if (!$result) {
} else {
//Mettre ici vos données on été mise à jour
}
} else {
// ici mettre le refus pour update
}
?>
<HR width="100%" SIZE=2>
Si ma reponse te convient, merci de l'accepter !
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 1 avril 2005 à 18:30
Salut,
de plus, on n'utilise pas mysql_pconnect() qui est plus gourmande en
ressources systèmes et généralement bannie par les hébergeurs
mutualisés mais mysql_connect() (tu risques d'avoir des
max_users_connections)...