Hello all,

Ik heb een scriptje waarmee ik de datum kan invoeren in mijn database, alleen wil ik ook de mogelijkheid om een datum op te zoeken in de database. Het volgende heb ik, maar volgens mij is klopt er iets niet in de $sql en wellicht in de submit (onderaan). Wie-o-wie kan me helpen!

Het volgende scriptje heb ik:
<?php

include ("include/dbconnect.php");

$datum = $_POST['iJaar'] . '-' .$_POST['iMaand'] . '-' .$_POST['iDag'];

if ($submit)
	{
	$sql="SELECT * FROM $table WHERE $submit = $datum ORDER BY naam ASC";
	$result = mysql_query($sql);
	$resultsnumber = mysql_numrows($result);
	
	echo "<TABLE BORDER=0>";
	echo "Aantal gevonden: <b><font color=#0066CC>$resultsnumber</font></b>";
	
	$alternate = "2"; 
		while ($myrow = mysql_fetch_array($result))
		{
		$naam = $myrow["naam"];
		$id = $myrow["id"];		
				
		if ($alternate == "1") { 
		$color = "#D8E0E4"; 
		$alternate = "2"; 
		} 
		else { 
		$color = "#E6EEF2"; 
		$alternate = "1"; 
} 
			echo "<TR bgcolor=$color><TD><img src=images/bullet.gif>&nbsp;$naam &nbsp;</TD>";
			echo "<td><b>>></b><a href='view.php?id=$id'>&nbsp;zie details&nbsp;</a></td>";
			}
	echo "</TR></TABLE>";
	echo "<p>Kijk op <a href='index.php'>Alfabetische volgorde</a> of <a href='$PHP_SELF'>Opnieuw zoeken</a></p>";

	}


else
	{
?>

	
<form method="POST" action="<? $PHP_SELF ?>">
<p></p>
  <table border="0" cellspacing="2" width="380">
    <tr> 
      <td>Of zoek op geboortedatum:<b></b></td>
    </tr>
    <tr> 
      <td valign="top"> 
	  	  <?php 
// De variabelen die gevuld worden zijn: $iDag, $iMaand en $iJaar 
// Deze code kan je zo in je formulier zetten 

// Geef hier zelf de jaartallen die ingevuld mogen worden in de dropdown 
$jaar        = range( 2000, 2010 );    // Voorbeeld 2000 tot en met 2010 

// Array met de namen van de maanden 
$maand    = array(    "Januari", "Februari", "Maart", "April", "Mei", "Juni", 
                        "Juli", "Augustus", "September", "Oktober", "November", "December"); 
                         
// Dropdown voor de dagen 
echo '<select name="iDag">'; 
for($i=1; $i<=31; $i++) 
{ 
    echo '<option value="' . $i . '">' . $i . '</option>'; 
} 
echo '</select>'; 

// Dropdown voor de maanden 
$count    = count($maand); 
echo '<select name="iMaand">'; 
for($i=1; $i<=$count; $i++) 
{ 
    echo '<option value="' . $i . '">' . $maand[$i-1] . '</option>'; 
} 
echo '</select>'; 

// Dropdown voor de jaren 
$count    = count($jaar); 
echo '<select name="iJaar">'; 
for($i=1; $i<=$count; $i++) 
{ 
    echo '<option value="' . $jaar[$i-1] . '">' . $jaar[$i-1] . '</option>'; 
} 
echo '</select>'; 
?> 
      </td>
    </tr>
    <tr> 
      <td> 
        <input type="Submit" class="button" name="submit" value="Zoeken">
      </td>
    </tr>
  </table>
</form>
 <?
	}

?>
bedankt! ik heb het even in phpmyadmin gedraaid en inderdaad krijg je dan een alias. Alleen hoe zet ik deze in mijn script?
Ik heb namelijk nu:

$result = mysql_query("SELECT * FROM $table WHERE id=$id",$db);


hoe zet ik dit ertussen?

SELECT DATE_FORMAT(date, '%W %M %Y') AS datum_opgemaakt FROM $table
Weet iemand waar ik
SELECT DATE_FORMAT(date, '%W %M %Y') AS datum_opgemaakt FROM $table 
moet zetten?
Ik heb namelijk nu dit:
$result = mysql_query("SELECT * FROM $table WHERE id=$id",$db);
   $links = mysql_fetch_array($result);

Merci!
Gewoon ertussen gescheiden door een komma.

$result = mysql_query("SELECT *, DATE_FORMAT(date, '%W %M %Y') AS datum_opgemaakt FROM $table WHERE id=$id",$db);
$links = mysql_fetch_array($result);

en dan bv.
echo $links['datum_opgemaakt '];
Voorbeeldje met foutafhandeling, dat ontbrak ook nog:
<?php
$query = "
SELECT
DATE_FORMAT(date, '%W %M %Y') AS datumopmaak
FROM
".$table."
WHERE
id = ".$id; // variabelen buiten quotes

$result = mysql_query($query);

if(!$result){
echo 'Mislukt: '.mysql_error().'<br />';
echo 'Met query: '.$query;
die(); // kan netter
}

$links = mysql_fetch_array($result);

?>
Super! Alleen krijg ik nu bv.:

19th August 2004, hoe krijg ik dit in het Nederlands?
Frank hamert wel op foutafhandeling...al meerdere keren gezien hier.
wel makkelijk om te kijken wat voor fout je hebt staan in je query. Merci Frank!

Reageren