Page 1 sur 1

execution automatique d'un script php

Posté : 26 mai 2010, 11:19
par stivity
Bonjour,


J'ai créé un site et je voudrais que quelqu'un m'aide en fait je veux que le site tous les jours fait une vérification de la validité de la date limite de dépôt des offres de mes Appels d'offres .
En effet, si La date limite de dépôt des offres est égale à la date du jour , je veux que l'Appel d'offre passe de la table Appeldoffre vers la table resultat_Appeldoffre
Sinon le site passe

Et après avoir trouvé l'Appel d'offre qui a une date valide on va chercher ses offres dans la base de données pour que ses offres passent aussi de la table offre vers la table resultat_offre
Le code est comme ça :

Code : Tout sélectionner

<?php // ouverture de la base de données $n = mysql_connect("localhost", "root", ''); mysql_select_db("marketplace"); //on va chercher les Appel d'offre $sql = "SELECT * FROM Appeldoffre "; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $donnees = mysql_fetch_array($req); // s'il ya des Appel d'offre if ($donnees) { while ($donnees = mysql_fetch_array($req)) // On fait une boucle pour vérifier chaque date limite de depot des offres de chaque Appel d'offre { // on va trouver la date de depot des offres et la date d'aujourd'hui $dateDepot = $donnes['date_limite_depot_offre']; // la date est au format jj/mm/aa dans la base de donnée $date = date('d/m/Y'); // on va comparer les dates if ($dateDepot=$date) { //------la date est valide on peut le transfèrer dans la table res_Appeldoffre--------- mysql_query("INSERT INTO res_Appeldoffre VALUES('".$donnees['id_Appeldoffre']."', '" . $donnees['id_membres'] . "', '" . $donnees['objet_appeldoffre'] . "', '" .$donnees['date_creation_appeldoffre']. "', '" .$donnees['date_limite_depot_offre']. "', '" . $donnees['modalite_paiement'] . "', '" .$donnees['modalite_livraison']. "')"); // on va chercher ses offres $sq2 = "SELECT * FROM offre WHERE id_Appeldoffre='".$donnees['id_Appeldoffre']."' "; $req2 = mysql_query($sq2) or die('Erreur SQL !<br>'.$sq2.'<br>'.mysql_error()); $data = mysql_fetch_array($req2) // s'il ya des offres if ($data) { while ($data = mysql_fetch_array($req2)) { mysql_query("INSERT INTO res_Offre VALUES('".$data['id_offre']."', '" . $data['id_Appeldoffre'] . "', '" . $data['id_membres'] . "', '" .$data['cout_livraison']. "', '" .$data['cout_total_offre']. "', '" . $data['garantie'] . "', '" .$data['delais_livraison']. "', '" .$data['experience']. "','" .$data['date_creation_offre']. "')"); } } } } mysql_close($n); // on ferme la connection ?>

Comment le serveur va exécuter chaque jour ce script pour que par exemple le 18/05/2010 à 00H00min les appels d'offres valide soient transférés dans la table res_Appeldoffre et ainsi que leurs offres !!

En plus je voudrais savoir si c'est possible vous avez vu dans la table qu'il ya un id_membre je voudrais que le site envoie un mail aux membres à leur Courier électronique (car j'ai aussi une table membre avec comme champ mail) leur disant que le résultat est disponible. Pour le id_membre se trouvant dans la table Appel d'offre et le id_membre se trouvant dans la table offre car celui de la table Appel d'offre est un acheteur et celui de la table offre c'est un fournisseur donc ils ont un statu different !!!
MERCI

Re: execution automatique d'un script php

Posté : 26 mai 2010, 14:38
par Lupuz
Regardes du côté des crons (mais il faut que tu ais cette possibilité avec ton hébergeur).

Re: execution automatique d'un script php

Posté : 26 mai 2010, 19:03
par stopher
Salut,

Comme le précise Lupuz , tu peux utiliser les crontab pour lancer ce script de façon régulière et automatique.

Si tu n'as pas la main sur ton serveur , tu as toujours des services comme webcron .

Mais il t'est indispensable de rendre ton script accessible de l'extérieur .

Ch.

Re: execution automatique d'un script php

Posté : 01 juin 2010, 11:20
par stivity
je n'ai pas encore hebergé le site j'essaie de le faire sur mon serveur wamp pour que après j'envoi mon site sur un serveur d'un hebergeur le travail déja fait
mais est ce vous pouvez m'expliquer les crontab? c'est la première fois que j'entends ca et je suis nouveau en php !!
est ce que ce n'est pas possible meme sur wamp pour que si j'ouvre mon site site le serveur execute le script automatiquement et envoyer les données dans une autre table!! car le serveur ouvre une connection avec la base de donnée et compare la date seulement et je pense aussi que cette action n'empeche pas les pages à s'ouvrir!!
merci beaucoup de votre aide

Re: execution automatique d'un script php

Posté : 01 juin 2010, 11:52
par telnes
hello

un peut de lecture

http://fr.wikipedia.org/wiki/Cron

Re: execution automatique d'un script php

Posté : 01 juin 2010, 13:08
par stivity
Je vais jeter un coup d'oeil mais donnez moi une réponse à ma question
merci de votre Attention!!

Re: execution automatique d'un script php

Posté : 07 juin 2010, 10:40
par stivity
comment faire un crontab avec php?

Re: execution automatique d'un script php

Posté : 07 juin 2010, 10:47
par AoSiX
Bonjour,

si tu es sous *NIX / *NUX, tu peux creer un script 'console' php...
#!/usr/local/bin/php -q
<?php
    // mon super code php qui roxx du poney ! ( l'option ci dessus -q sert à supprimer les entêtes HTTP )
     echo 'Hiaaaaaaaaaa\n';
?>
Puis tu le places dans cron.daily pour une exécution journalière, par exemple !

Re: execution automatique d'un script php

Posté : 13 juin 2010, 11:21
par stivity
salut AoSIX merci de ton aide comme je l' ai dit en haut moi j'utilise wamp comme serveur et je ne sais pas où créer les crontab sur wamp et j'utilise windows vista et pas lunix

#!/usr/local/bin/php -q : on utilise ca en haut pour créer un crontab?!! sous lunix ou vista est ce que c'est la meme chose?!! moi j'ai déjà fait le script qui va s'execute automatiquement je voulais qu'on me montre les premières lignes du crontab jusqu' où on commence à inserer les lignes du php!! sous vista et sous wamp comme serveur
merci