ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
modif valeur plus compteur
« le: 03 Août 2007 à 14:37:27 » |
|
Bonjour
J'ai un formulaire qui envoie les données dans ma base sql via un script PHP J'ai deux conditions qui sont si nombre de saisie dépasse 50 alors date = date+1 si la saisie se fait après 15h30 alors date= date+1
voila la partie du script concerné:
$today = date('Y-m-d'); $sql = "SELECT date FROM livraisons WHERE date ='$today'"; $query=mysql_query($sql); $nb = mysql_num_rows($query);
$now = mktime(date('H'), date('i'), 0, date('m'), date('d'), date('Y')); $HeureLimite = mktime(15, 30, 0, date('m'), date('d'), date('Y'));
if($nb>=50 || $now>=$HeureLimite) $DateLivraison = date('Y-m-d', strtotime('+1 day')); else $DateLivraison = date('Y-m-d');
$sql = "INSERT INTO livraisons VALUES ('', '".$civilite."', '".$nom."', '".$prenom."', '".$adresse."', '".$ville."', '".$codepostal."', '".$telephone."', '".$sqldocumentsafournir."', '".$conseiller."', '".$rendezvous."', '".$remarque."', '".$DateLivraison."')"; $res = mysql_query($sql);
if ($res) { echo $msg_ok; } else { echo mysql_error(); }
}
Je voudrais permettre à un utilisateur particulier de modifier le chiffre 50 dans ma condition
if($nb>=50
Via une zone de sasie il pourra mettre n'importe quel nombre entier
Ensuite en fonction du nombre saisie je voudrais que sur la page de mon formulaire il y est un compteur qui indique aux utilisateurs le nombre de saisie possible pour le jour en cours
D'avance merci pour votre aide
|
|
|
|
|
Journalisée
|
|
|
|
|
|
Damien
|
 |
Re : modif valeur plus compteur
« Répondre #1 le: 04 Août 2007 à 11:45:48 » |
|
Bonjour,
Bravo pour avoir bien adapté mes pistes d'idées de la dernière fois pour la date, le script a l'air bien structuré et on s'y retrouve.
Si j'ai bien le nombre 50 à changer est une configuration qui va être faite par un webmaster, et donc à un autre endroit que ce formulaire ci. Ca veut dire qu'il vous faudra un autre mini formulaire privé quelque part, et il faudra stocker la valeur quelque part. Les deux cas les plus couramment utilisé :
- écriture de la valeur dans un fichier de configuration, - ou vous pouvez ajouter une table configuration dans votre base de données où vous mettrez au minimum une clé (exemple : nb_saisies_par_jour) et une valeur (50). Et vous pourrez alors changer et récupérer cette valeur dynamiquement sans problème. Ca va rajouter une requête par contre.
|
|
|
|
|
Journalisée
|
|
|
|
ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
Re : modif valeur plus compteur
« Répondre #2 le: 05 Août 2007 à 16:16:48 » |
|
a votre avis quel est la solution la mieux adaptée?
Créer un fichier texte avec dedans la valeur ? Je sais pas trop si c'est possible via un script php d'aller modifier directement une valeur dans un fichier texte?
Merci pour votre aide
|
|
|
|
|
Journalisée
|
|
|
|
|
Damien
|
 |
Re : modif valeur plus compteur
« Répondre #3 le: 05 Août 2007 à 16:28:27 » |
|
Bonjour, C'est possible sans aucun problème. La fonction parse_ini_file permet par exemple de faire ce genre de choses. Il y a un exemple également ici sans utiliser cette fonction : http://www.asp-php.net/ressources/codes/PHP-Lire+un+fichier+de+config.aspxMais dans votre cas comme vous n'avez pas énormément de requêtes sql, la solution mysql est certainement la plus simple et pratique à mettre en oeuvre.
|
|
|
|
|
Journalisée
|
|
|
|
ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
Re : modif valeur plus compteur
« Répondre #4 le: 05 Août 2007 à 18:49:03 » |
|
ok je pense que vous avez raison J'ai créé une table avec un champ dedans, mais ce que je ne sais pas faire que mon script php vienne chercher cette valeur automatiquement
|
|
|
|
|
Journalisée
|
|
|
|
ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
Re : modif valeur plus compteur
« Répondre #5 le: 06 Août 2007 à 10:42:19 » |
|
J'ai créé une autre page htm avec un champ à remplir par l'utiisateur. cette variable (nombre) va dans une base qui se nomme test Juque la pas de problème Ensuite je veux modifier mon script php précédent pour que si mon nombre total d'enregistrement est supérieur à la variable nombre alors la date de la saisie = date+1 voila la partie de mon script que j'ai modifié: $nombre="SELECT nombre FROM test";
if($nb>=$nbMax || $now>=$HeureLimite) $DateLivraison = date('Y-m-d', strtotime('+1 day'));
Mais quand je met ça dés que je saisie quelquechose dans mon formulaire la date se met à date+1 Pouvez vous m'aider D'avance merci
|
|
|
|
|
Journalisée
|
|
|
|
|
Damien
|
 |
Re : modif valeur plus compteur
« Répondre #6 le: 06 Août 2007 à 12:39:56 » |
|
Bonjour, La première fois vous aviez mis : if($nb>=50 || $now>=$HeureLimite) $DateLivraison = date('Y-m-d', strtotime('+1 day')); Donc maintenant si on suppose que vous stockez la valeur dans le champ "nombre" de la table "test", ca devrait faire : $sql="SELECT nombre FROM test"; $requete = mysql_query($sql); $donnees = mysql_fetch_array($requete);
if($nb>=$donnees['nombre'] || $now>=$HeureLimite) $DateLivraison = date('Y-m-d', strtotime('+1 day'));
|
|
|
|
|
Journalisée
|
|
|
|
ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
Re : modif valeur plus compteur
« Répondre #7 le: 06 Août 2007 à 12:48:55 » |
|
je ne comprend pas $sql est déja egal à $sql = "SELECT date FROM livraisons WHERE date ='$today'";
je ne peux pas mettre:
$sql = "SELECT date FROM livraisons WHERE date ='$today'"; $sql=" SELECT nombre FROM test";
????
|
|
|
|
|
Journalisée
|
|
|
|
ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
Re : modif valeur plus compteur
« Répondre #8 le: 06 Août 2007 à 12:58:52 » |
|
J'ai quand même fait un test avec en rajoutant le code que tu m'as donné, mais il ne me met pas date=date+1 quand $nb est supérieur à la variable nombre saisie par l'utilisateur
On doit pas être loin.....
|
|
|
|
|
Journalisée
|
|
|
|
|
Damien
|
 |
Re : modif valeur plus compteur
« Répondre #9 le: 06 Août 2007 à 14:54:35 » |
|
Ah oui excuse moi, j'ai oublié qu'il y avait déjà une varaible $sql utilisée, donc il faut mettre autre chose effectivement, genre $sql2 ou $sqlconfig.
|
|
|
|
|
Journalisée
|
|
|
|
ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
Re : modif valeur plus compteur
« Répondre #10 le: 06 Août 2007 à 15:24:22 » |
|
Ca ne marche pas j'ai mis: $today = date('Y-m-d'); $sql = "SELECT date FROM livraisons WHERE date ='$today'"; $query=mysql_query($sql); $nb = mysql_num_rows($query);
$sql2="SELECT nombre FROM test"; $requete = mysql_query($sql2); $donnees = mysql_fetch_array($requete);
$now = mktime(date('H'), date('i'), 0, date('m'), date('d'), date('Y')); $HeureLimite = mktime(15, 30, 0, date('m'), date('d'), date('Y'));
if($nb>=$donnees['nombre']|| $now>=$HeureLimite) $DateLivraison = date('Y-m-d', strtotime('+1 day')); else $DateLivraison = date('Y-m-d');
Et la dés que je saisie via le formulaire il me met systématiquement la date de demain dans ma table livraison Une idée ? j'aimerais vraiment que cela fonctionne
|
|
|
|
|
Journalisée
|
|
|
|
ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
Re : modif valeur plus compteur
« Répondre #11 le: 06 Août 2007 à 15:36:42 » |
|
En fait j'avais oublié qu ema deuxième condition démarré à 15h30 dc c'est pour ça qu'il me mettait systématiquement date +1
Mais maintenant j'ai mis cette condition à 18h30. Puis j'ai saisie ma valeur nombre à 2 dans ma base test
Mais quand je saisie 3 formulaires en suivant il rest toujours à la date du jour
A l'aide svp
|
|
|
|
|
Journalisée
|
|
|
|
ju3979
Apprenti

Points gagnés: 0
Messages: 57
|
 |
Re : modif valeur plus compteur
« Répondre #12 le: 06 Août 2007 à 15:52:03 » |
|
yyyyeeeeesssss c'est bon ça marche
je m'étais trompé dans mes test maintenant ça fonctionne
La dernière chose que je voudrais faire c'est que sur la page html ou l'utilisateur arrive pour remplir le formulaire il y est un compteur lui indiquant (en fonction de la valeur "nombre" saisie dans une autre page par un utilisateur prècis) combien il peut encore saisir de formulaire sur la journée C'est en fait faire la soustraction de $donnees['nombre'] - $nb
Pouvez vous m'aider la dessus
D'avance merci
|
|
|
|
|
Journalisée
|
|
|
|
|