Probleme de conversion

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Probleme de conversion

par Photographiquement Vôtre » 06 oct. 2006, 18:10

Super, cela a l'air de marcher.

Merci beaucoup de ta persévérance

par Vikchill » 06 oct. 2006, 17:59

Ah, ok essaie de mettre ça
$date_arrivee=date("Y-m-d",$timestamp);
au lieu de ça
$date_arrivee=date("Y/m/d",$timestamp);
(des '-' au lieu des '/')

par Photographiquement Vôtre » 06 oct. 2006, 17:54

Avec plaisir :

Code : Tout sélectionner

SELECT COUNT(*) FROM tblcommande WHERE date(commandeO_timestamp)= '2006/10/01'

par Vikchill » 06 oct. 2006, 17:42

Sauf erreur, le cas 2 ne peut pas fonctionner. Tu veux bien donner la valeur de ta variable $sql pour le cas 1?

par Photographiquement Vôtre » 06 oct. 2006, 17:36

Voici mon code : $
date_depart= date("2006-10-01");
	
	$a_date = explode("-", $date_depart); 
	$annee = $a_date[0]; 
	$mois = $a_date[1]; 
	$jour = $a_date[2]; 

	$jour_test=0;
	
	$visites  = array();
	
	$max_days = date('t', mktime(0, 0, 0, $month, 15, $year));

for( $day = 1, $i = 1; $day <= $max_days; $day++, $i++ )
		{
		$jour_test= $jour_test +1;
				
				
		$timestamp=mktime(0,0,0,$mois,$jour_test,$annee);
		
		$date_arrivee=date("Y/m/d",$timestamp);
				
		
Cas 1 :		 
				
$sql = "SELECT COUNT(*) FROM tblcommande WHERE date(commandeO_timestamp)= '$date_arrivee' ";

Cas 2 :

$sql = "SELECT COUNT(commandeId) FROM tblcommande WHERE " .date('Y/m/d','commandeO_timestamp')." = '$date_arrivee' ";
						
			
		
$result = mysql_query($sql)or exit ('Erreur SQL !'.$result.'<br>'.mysql_error());

			
		$nb_commande =  mysql_result($result,0);
		echo "$nb_commande"; 
	
		
		
		
		
		}	
Dans les deux cas, j'obtiens 0 en nombre de commandes

par Vikchill » 06 oct. 2006, 17:26

Ce serait bien que tu participes un peu, par exemple en donnant la valeur de ta variable $sql et l'erreur, ou le résultat obtenu. N'ayant pas de moyen de tester, je fais ça un peu à l'aveuglette :?

par Photographiquement Vôtre » 06 oct. 2006, 17:25

Non Babeuf ce que je veux c'est compter le nombre de commandes par une requête SQL.


Désolé Vickchill mais cela ne marche pas

par Vikchill » 06 oct. 2006, 17:09

Ou bien plus simplement:

Code : Tout sélectionner

$sql = "SELECT COUNT(commandeId) FROM tblcommande WHERE date(commandeO_timestamp)= '".$date_arrivee."'" ;
non?

par Babeuf » 06 oct. 2006, 17:07

Tu dois faire une requete sql qui te renvoie ton commandeO_timestamp puis le placer dans une variable PHP et travailler avec cette variable

Code : Tout sélectionner

Un truc du genre: $commandeO_timestamp = $res['commandeO_timestamp'];
et du coup tu peux faire :

Code : Tout sélectionner

date('Y/m/d',$commandeO_timestamp)
ou alors j'ai compris le problème de travers :wink:

par Photographiquement Vôtre » 06 oct. 2006, 16:38

Dans ce cas que dois je mettre à la place de commandeO_timestamp !!! pour qu'il le reconnaisse

par Vikchill » 06 oct. 2006, 16:35

Tu t'embrouilles dans ton SQL et ton php.

Ta requête marche, puisque tu as ça qui arrive à MySQL:

Code : Tout sélectionner

SELECT COUNT(commandeId) FROM tblcommande WHERE 1970/01/01 = 2006/01/01
Effectivement ça ne peut que répondre 0.

Dans ton php, tu mets

Code : Tout sélectionner

date('Y/m/d',commandeO_timestamp)
sauf que php ne connais pas les données de ta table, il ne connait pas commandeO_timestamp, il te renvoie donc le premier jour de l'ère Unix.

par Photographiquement Vôtre » 06 oct. 2006, 16:05

Non commandeO_timestamp est une donnée de ma table tblcommande

par zeus » 06 oct. 2006, 16:00

si je ne m'abuse, cette partie de la chaine est en PHP
date('Y/m/d',commandeO_timestamp)
Or, commandeO_timestamp correspond à quoi ???

a mon avis, il manque un $ devant la variable ;)

par Photographiquement Vôtre » 06 oct. 2006, 15:59

Oui

WHERE 1970/01/01 = 2006/01/01

par Vikchill » 06 oct. 2006, 15:56

As-tu fait un écho de ta variable $sql pour contrôler ce qu'il y avait dedans?