Possible Duplicate:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in selectAvertissement: gregoriantojd() attend le paramètre 1 à être long, chaîne donnée en ligne 19
à chaque fois que je tente de tirer une date à partir de la ligne caseOpen dans tbl_accident Je suis accueilli par l'erreur suivante ...
Warning: gregoriantojd() expects parameter 1 to be long, string given in on line 19
quel pourrait être le problème?
la date à caseOpen a le format jj/mm/aaaa
<div style="paddingz: 5px;">
<table width="100%" height="100%" border="0" cellpadding="5" cellspacing="0" class="cp">
<?php
// Make a MySQL Connection
mysql_select_db("speedycms") or die(mysql_error());
// Get all the data from the "example" table
$result = mysql_query("SELECT * FROM tbl_accident ORDER BY id ASC")
or die(mysql_error());
// Define $color=1
$color="1";
// date difference
function dateDiff($dformat, $endDate, $beginDate)
{
$date_parts1=explode($dformat, $beginDate);
$date_parts2=explode($dformat, $endDate);
$start_date=gregoriantojd($date_parts1[0], $date_parts1[1], $date_parts1[2]);
$end_date=gregoriantojd($date_parts2[0], $date_parts2[1], $date_parts2[2]);
return $end_date - $start_date;
}
$date1 = $row['caseOpen'];
$date2 = date('d/m/Y');
echo '
<tr bgcolor="#cccccc">
<td width="45px">Case ID</td>
<td>Client Name/Address</td>
<td>Accident Date</td>
<td>Case Opened</td>
<td>Days Running</td></tr>';
while($rows=mysql_fetch_array($result)){
// If $color==1 table row color = #FFC600
if($color==1){
echo "<tr bgcolor='#f2f2f2' valign='top'>
<td>".$rows['id']."</td>
<td>".$rows['clientName']." <BR> ".$rows['address']."</td>
<td>".$rows['doaDay']."/".$rows['doaMonth']."/".$rows['doaYear']."</td>
<td>".$rows['caseOpen']."</td>
<td>". dateDiff("/", $date2, $date1) ."</td>
</tr>";
// Set $color==2, for switching to other color
$color="2";
}
// When $color not equal 1, use this table row color
else {
echo "<tr bgcolor='#ffffff' valign='top'>
<td>".$rows['id']."</td>
<td>".$rows['clientName']." <BR> ".$rows['address']."</td>
<td>".$rows['doaDay']."/".$rows['doaMonth']."/".$rows['doaYear']."</td>
<td>".$rows['caseOpen']."</td>
</tr>";
// Set $color back to 1
$color="1";
}
}
echo '';
?>
</table>
</div>
Je vous serais reconnaissant de toute aide. Merci d'avance!
Erreur fatale: Appel à la fonction non définie strptime() ?? – methuselah
Oups, j'avais manqué que ce n'est pas implémenté sur Windows ou dans les versions de PHP antérieures à 5.1. J'avais commencé à écrire une autre réponse, mais je dois l'avoir annulée avant de poster. Accrochez-vous et je vais le réécrire de la mémoire. – Powerlord