Zoeken in query tussen 2 getallen
roelh - 15/06/2006 22:44
PHP gevorderde
Heey mensen,
Mijn zoekmachine lukt niet aardig, hij zoekt precies zoals ik wil.
Nu wil ik graag dat hij bijvoorbeeld tussen 2 getallen gaat zoeken.
Hoe kan ik dat voor elkaar krijgen?
Ik heb nu dit, alvast bedankt voor jullie hulp!
Groet,
<LINK REL="stylesheet" HREF="style1.css" TYPE="text/css">
<?php
include "config.php";
if(isset($_POST['submit'])) {
?>
<table border="0" width="100%">
<tr>
<td><b>Bedrijfsnaam</b></td>
<td><b>Merk/Type</b></td>
<td><b>Bouwjaar</b></td>
<td><b>Brandstof</b></td>
</tr>
<?php
if(isset($_POST['merk']) || isset($_POST['type']) || isset($_POST['bouwjaar']))
{
$like = " WHERE ";
if(isset($_POST['merk']))
{
$like .= "merk LIKE '%".$_POST['merk']."%'";
$and = true;
}
if(isset($_POST['type']))
{
if($and)
{
$like .= " AND ";
}
$like .= "type LIKE '%".$_POST['type']."%'";
$and = true;
}
if(isset($_POST['bouwjaar']))
{
if($and)
{
$like .= " AND ";
}
$like .= "bouwjaar LIKE '%".$_POST['bouwjaar']."%'";
}
if(isset($_POST['brandstof']))
{
if($and)
{
$like .= " AND ";
}
$like .= "brandstof LIKE '%".$_POST['brandstof']."%'";
}
}
$query = mysql_query("SELECT a.id, a.merk, a.type, a.dealerid, a.bouwjaar, a.brandstof, a.vraagprijs, b.bedrijfsnaam
FROM autos a
LEFT JOIN bedrijven b ON ( b.id = a.dealerid ) ".$like." order by merk ASC") or die(mysql_error());
while($zoek = mysql_fetch_assoc($query)) {
?>
<tr>
<td><a href="dealers.php?id=<?=$zoek['dealerid'];?>"><?=$zoek['bedrijfsnaam'];?></a></td>
<td><a href="autos.php?id=<?=$zoek['id'];?>"><?=$zoek['merk']." ".$zoek['type'];?></a></td>
<td><?=$zoek['bouwjaar'];?></td>
<td><?=$zoek['brandstof'];?></td>
</tr>
<?php
}
//einde 'aantal'-lus
echo "</table>";
}else{
echo "Geen opdracht opgegeven";
}
?>
<LINK REL="stylesheet" HREF="style1.css" TYPE="text/css">
<?php
include "config.php" ;
if ( isset ( $_POST [ 'submit' ] ) ) { ?>
<table border="0" width="100%">
<tr>
<td><b>Bedrijfsnaam</b></td>
<td><b>Merk/Type</b></td>
<td><b>Bouwjaar</b></td>
<td><b>Brandstof</b></td>
</tr>
<?php
if ( isset ( $_POST [ 'merk' ] ) || isset ( $_POST [ 'type' ] ) || isset ( $_POST [ 'bouwjaar' ] ) ) {
$like = " WHERE " ;
if ( isset ( $_POST [ 'merk' ] ) ) {
$like .= "merk LIKE '%" . $_POST [ 'merk' ] . "%'" ;
$and = true ;
}
if ( isset ( $_POST [ 'type' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "type LIKE '%" . $_POST [ 'type' ] . "%'" ;
$and = true ;
}
if ( isset ( $_POST [ 'bouwjaar' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "bouwjaar LIKE '%" . $_POST [ 'bouwjaar' ] . "%'" ;
}
if ( isset ( $_POST [ 'brandstof' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "brandstof LIKE '%" . $_POST [ 'brandstof' ] . "%'" ;
}
}
$query = mysql_query ( "SELECT a.id, a.merk, a.type, a.dealerid, a.bouwjaar, a.brandstof, a.vraagprijs, b.bedrijfsnaam FROM autos a
LEFT JOIN bedrijven b ON ( b.id = a.dealerid ) " . $like . " order by merk ASC" ) or
die ( mysql_error ( ) ) ;
?>
<tr>
<td><a href="dealers.php?id=<?= $zoek [ 'dealerid' ] ; ?> "><?= $zoek [ 'bedrijfsnaam' ] ; ?> </a></td>
<td><a href="autos.php?id=<?= $zoek [ 'id' ] ; ?> "><?= $zoek [ 'merk' ] . " " . $zoek [ 'type' ] ; ?> </a></td>
<td><?= $zoek [ 'bouwjaar' ] ; ?> </td>
<td><?= $zoek [ 'brandstof' ] ; ?> </td>
</tr>
<?php
}
//einde 'aantal'-lus
} else {
echo "Geen opdracht opgegeven" ; }
?>
6 antwoorden
Gesponsorde links
Gerard - 15/06/2006 22:45
Ouwe rakker
Citaat:
Nu wil ik graag dat hij bijvoorbeeld tussen 2 getallen gaat zoeken.
Hoe kan ik dat voor elkaar krijgen?
Dit kan bijvoorbeeld met
WHERE getal BETWEEN 1 AND 100
WHERE getal BETWEEN 1 AND 100
roelh - 15/06/2006 22:50 (laatste wijziging 15/06/2006 22:54)
PHP gevorderde
Hmmss nja ik had al zoiets geprobeerd, maar wouw dus niet zo, maarja als dat enige optie is, maar ff verder proberen
Heb dit, wil alleen niet zo werken dan.
Kan iemand me helpen?
if(isset($_POST['bouwjaar']) && isset($_POST['bouwjaar1']))
{
if($and)
{
$like .= " AND ";
}
$like .= "bouwjaar between LIKE '%".$_POST['bouwjaar']."%' AND LIKE '%".$_POST['bouwjaar1']."%'";
}
if ( isset ( $_POST [ 'bouwjaar' ] ) && isset ( $_POST [ 'bouwjaar1' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "bouwjaar between LIKE '%" . $_POST [ 'bouwjaar' ] . "%' AND LIKE '%" . $_POST [ 'bouwjaar1' ] . "%'" ;
}
vinTage - 15/06/2006 23:13
Nieuw lid
Zoeiets mss ?
<?
$like .= "bouwjaar >= '".$_POST['bouwjaar']."' AND <='".$_POST['bouwjaar1']."'";
<?
$like .= "bouwjaar >= '" . $_POST [ 'bouwjaar' ] . "' AND <='" . $_POST [ 'bouwjaar1' ] . "'" ;
roelh - 15/06/2006 23:19
PHP gevorderde
Hmmss na hij pakt hem dus niet goed, omdat als je bouwjaar gebruikt, hij die eerste ook meepakt.
Iemand idee?
Krijg deze fout:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '<='' AND brandstof LIKE '%%' order by merk ASC' at line 3
You have an error in your SQL syntax
; check the manual that corresponds to your
MySQL server version
for the right syntax to use near
'<=' ' AND brandstof LIKE ' %% ' order by merk ASC' at line
3
<LINK REL="stylesheet" HREF="style1.css" TYPE="text/css">
<?php
include "config.php";
if(isset($_POST['submit'])) {
?>
<table border="0" width="100%">
<tr>
<td><b>Bedrijfsnaam</b></td>
<td><b>Merk/Type</b></td>
<td><b>Bouwjaar</b></td>
<td><b>Brandstof</b></td>
</tr>
<?php
if(isset($_POST['merk']) || isset($_POST['type']) || isset($_POST['bouwjaar']))
{
$like = " WHERE ";
if(isset($_POST['merk']))
{
$like .= "merk LIKE '%".$_POST['merk']."%'";
$and = true;
}
if(isset($_POST['type']))
{
if($and)
{
$like .= " AND ";
}
$like .= "type LIKE '%".$_POST['type']."%'";
$and = true;
}
if(isset($_POST['bouwjaar']))
{
if($and)
{
$like .= " AND ";
}
$like .= "bouwjaar LIKE '%".$_POST['bouwjaar']."%'";
}
if(isset($_POST['bouwjaar']) && isset($_POST['bouwjaar1']))
{
if($and)
{
$like .= " AND ";
}
$like .= "bouwjaar >= '".$_POST['bouwjaar']."' AND <='".$_POST['bouwjaar1']."'";
}
if(isset($_POST['brandstof']))
{
if($and)
{
$like .= " AND ";
}
$like .= "brandstof LIKE '%".$_POST['brandstof']."%'";
}
}
$query = mysql_query("SELECT a.id, a.merk, a.type, a.dealerid, a.bouwjaar, a.brandstof, a.vraagprijs, b.bedrijfsnaam
FROM autos a
LEFT JOIN bedrijven b ON ( b.id = a.dealerid ) ".$like." order by merk ASC") or die(mysql_error());
while($zoek = mysql_fetch_assoc($query)) {
?>
<tr>
<td><a href="dealers.php?id=<?=$zoek['dealerid'];?>"><?=$zoek['bedrijfsnaam'];?></a></td>
<td><a href="autos.php?id=<?=$zoek['id'];?>"><?=$zoek['merk']." ".$zoek['type'];?></a></td>
<td><?=$zoek['bouwjaar'];?></td>
<td><?=$zoek['brandstof'];?></td>
</tr>
<?php
}
//einde 'aantal'-lus
echo "</table>";
}else{
echo "Geen opdracht opgegeven";
}
?>
<LINK REL="stylesheet" HREF="style1.css" TYPE="text/css">
<?php
include "config.php" ;
if ( isset ( $_POST [ 'submit' ] ) ) { ?>
<table border="0" width="100%">
<tr>
<td><b>Bedrijfsnaam</b></td>
<td><b>Merk/Type</b></td>
<td><b>Bouwjaar</b></td>
<td><b>Brandstof</b></td>
</tr>
<?php
if ( isset ( $_POST [ 'merk' ] ) || isset ( $_POST [ 'type' ] ) || isset ( $_POST [ 'bouwjaar' ] ) ) {
$like = " WHERE " ;
if ( isset ( $_POST [ 'merk' ] ) ) {
$like .= "merk LIKE '%" . $_POST [ 'merk' ] . "%'" ;
$and = true ;
}
if ( isset ( $_POST [ 'type' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "type LIKE '%" . $_POST [ 'type' ] . "%'" ;
$and = true ;
}
if ( isset ( $_POST [ 'bouwjaar' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "bouwjaar LIKE '%" . $_POST [ 'bouwjaar' ] . "%'" ;
}
if ( isset ( $_POST [ 'bouwjaar' ] ) && isset ( $_POST [ 'bouwjaar1' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "bouwjaar >= '" . $_POST [ 'bouwjaar' ] . "' AND <='" . $_POST [ 'bouwjaar1' ] . "'" ;
}
if ( isset ( $_POST [ 'brandstof' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "brandstof LIKE '%" . $_POST [ 'brandstof' ] . "%'" ;
}
}
$query = mysql_query ( "SELECT a.id, a.merk, a.type, a.dealerid, a.bouwjaar, a.brandstof, a.vraagprijs, b.bedrijfsnaam FROM autos a
LEFT JOIN bedrijven b ON ( b.id = a.dealerid ) " . $like . " order by merk ASC" ) or
die ( mysql_error ( ) ) ;
?>
<tr>
<td><a href="dealers.php?id=<?= $zoek [ 'dealerid' ] ; ?> "><?= $zoek [ 'bedrijfsnaam' ] ; ?> </a></td>
<td><a href="autos.php?id=<?= $zoek [ 'id' ] ; ?> "><?= $zoek [ 'merk' ] . " " . $zoek [ 'type' ] ; ?> </a></td>
<td><?= $zoek [ 'bouwjaar' ] ; ?> </td>
<td><?= $zoek [ 'brandstof' ] ; ?> </td>
</tr>
<?php
}
//einde 'aantal'-lus
} else {
echo "Geen opdracht opgegeven" ; }
?>
marten - 16/06/2006 08:23 (laatste wijziging 16/06/2006 08:23)
Beheerder
<?php
if(isset($_POST['bouwjaar']) && isset($_POST['bouwjaar1']))
{
if($and)
{
$like .= " AND ";
}
$like .= "bouwjaar BETWEEN '".$_POST['bouwjaar']."' AND '".$_POST['bouwjaar1']."'";
}
?>
<?php
if ( isset ( $_POST [ 'bouwjaar' ] ) && isset ( $_POST [ 'bouwjaar1' ] ) ) {
if ( $and )
{
$like .= " AND " ;
}
$like .= "bouwjaar BETWEEN '" . $_POST [ 'bouwjaar' ] . "' AND '" . $_POST [ 'bouwjaar1' ] . "'" ;
}
?>
Misschien zo?
Gesponsorde links
Dit onderwerp is gesloten .