Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & PostgreSQL
PHP & PostgreSQL Forum d'entraide sur PostgreSQL avec PHP. Avant de poster -> FAQ PostgreSQL, Cours PostgreSQL. Pour les questions concernant le moteur PostgreSQL plutôt que les fonctions PHP, merci d'utiliser le forum PostgreSQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/05/2011, 10h43   #1
Candidat au titre de Membre du Club
 
ben gr
Inscription : octobre 2010
Messages : 49
Détails du profil
Informations personnelles :
Nom : ben gr

Informations forums :
Inscription : octobre 2010
Messages : 49
Points : 10
Points : 10
Par défaut Attendre la fin d'une requête avant de continuer le code

Bonjour,

Je lance une requête dans ma page web. Cependant le code qui suit contient lui aussi une requête. Il y a donc conflit entre mes deux requêtes qui sont exécutées en parallèles. Or je souhaiterais que ma deuxième requête attendent la fin de la première avant de débuter.

Ce que je fais : Je vide ma table 'tourdeau' (delete from tourdeau) ensuite j'inserts des données dans cette même table tourdeau' (insert into).

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
$query = "DELETE FROM tourdeau" ;				
	pg_query($dblink,$query)  or die ('erreurrequete');
 
 
 
	$s=0; //seconde
	$min=0; //minute
	$h=0; // heure
	$jr=1; // jour
	$m=3; // mois
	$a=2010; // année
 
	$countperiode = 0; // initialisation compteur periode
 
 
	$datefinsaison = date  ("c", mktime($h, $min, $s, $m, $jr, $a));
 
	WHILE  ($datefinsaison <= date  ("Y-m-d H:i:s", mktime(0, 0,0 , 11, 1, 2010))){
 
		echo ("periode -------------------------".$countperiode." et date fin saison".$datefinsaison."<br>"); 
		$countperiode = $countperiode + 1; // compteur du nombre de periodes
		$j=0;
 
	  while ($j <= $i) {
 
		$tabparcelle [$j][6] =  date  ("Y-m-d H:i:s", mktime($h, $min, $s, $m, $jr, $a));//début du tour d'eau
		$s= $s + $tabparcelle [$j][5];
		$tabparcelle [$j][7] =  date  ("Y-m-d H:i:s", mktime($h, $min, $s, $m, $jr, $a));//fin du tour d'eau
		echo $tabparcelle [$j][0];
		echo (" |".$tabparcelle [$j][6]." |");
		echo ($tabparcelle [$j][7]." |");
		echo ($tabparcelle [$j][5]."<br>");
 
		$idtourdeau = $countperiode.$tabparcelle [$j][0]; //creation de la cle id tour d'eau
 
		$query = "INSERT INTO tourdeau (idtourdeau , datedebut, datefin  )
				VALUES ('".$idtourdeau."'  ,'".$tabparcelle [$j][6]."', '".$tabparcelle [$j][7]."'  ) ";
	    pg_query($dblink,$query)  or die ('erreurrequete');
 
 
		$datefinsaison = $tabparcelle [$j][7]; //verifie condition fin de saison d'arrosage
 
		$j=$j+1;
	  }
	}
Par avance merci,


EDIT***
Finalement mon problème ne venait pas de cela. En revanche comment php traite la requête? Il attend bien la fin de celle-ci avant de continuer? Mes recherches m'avaient amené vers pg_execute() mais je n'ai pas trop compris les tenants et aboutissant de cette commande.
renardchan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2011, 11h35   #2
Membre Expert
 
Avatar de Djakisback
 
Inscription : février 2005
Messages : 1 791
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 1 791
Points : 1 681
Points : 1 681
Salut,
oui, normalement l'exécution d'une requête est bloquante jusqu'au retour du résultat ou du time out.
Djakisback est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2011, 10h55   #3
Candidat au titre de Membre du Club
 
ben gr
Inscription : octobre 2010
Messages : 49
Détails du profil
Informations personnelles :
Nom : ben gr

Informations forums :
Inscription : octobre 2010
Messages : 49
Points : 10
Points : 10
ok merci
renardchan est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h24.


 
 
 
 
Partenaires

Hébergement Web