Nieuw lid |
|
Ik haal uit mijn database allemaal hotels, campings, appartementen, etc. Bij sommige van deze staat hierin niet Hotel, camping of appartement. Dan staat er dus bijvoorbeeld NH Amsterdam. Nu wil ik dat er hierbij nog het accommodatie type bij geplaatst wordt zodat het Hotel NH Amsterdam wordt.
Ik dacht het controleren of een waarde voorkomt in een array als volgt werkt:
<?php
$aAccommodatietypeNaam = array('hotel','motel','appartement', 'bungalow', 'vakantiehuis', 'hostel', 'aparthotel', 'villa', 'camping', 'herberg', 'chalet', 'vakantiepark', 'bed&breakfast', 'b&b');
$query = "SELECT naam FROM accommodaties";
$result= mysql_query($query) or die (mysql_error());
while ($row = mysql_fetch_assoc($result))
{
if (in_array($row['naam'], $aAccommodatietypeNaam))
{
echo $row['naam']. ' komt voor in de array.';
}
else
{
echo $row['naam']. ' komt niet voor in de array.';
}
}
?>
<?php $aAccommodatietypeNaam = array('hotel','motel','appartement', 'bungalow', 'vakantiehuis', 'hostel', 'aparthotel', 'villa', 'camping', 'herberg', 'chalet', 'vakantiepark', 'bed&breakfast', 'b&b'); $query = "SELECT naam FROM accommodaties"; { if (in_array($row['naam'], $aAccommodatietypeNaam)) { echo $row['naam']. ' komt voor in de array.'; } else { echo $row['naam']. ' komt niet voor in de array.'; } } ?>
Dit werkt echter niet, want ik krijg steeds de 'else' melding. Ik vermoed dat dit komt doordat bijvoorbeeld een waarde uit de DB zoals "Hotel Zeezicht" ook false geeft omdat deze niet precies overeenkomt met de waarde "hotel". Ik heb daarom toen geprobeerd de hotelnamen uit de DB proberen op te splitsen door een explode te doen op de spatie, maar daar krijg ik het ook niet werkend mee.
Heeft iemand van jullie misschien een idee hoe ik dit goed werkend kan krijgen? Het gaat er dus om hoe ik kan kijken of een woord uit een hotelnaam (of campingnaam, appartementnaam, etc) voorkomt in $aAccommodatietypeNaam.
|