Hallo mensen,

Ik wil een plaatsnaam die al bestaat bij een 2e insert uitsluiten.
De plaatsnaam is helaas geen primary index dus ik moet het anders oplossen.


Volgende code gemaakt:

<?
$select_catid =

"SELECT
*
FROM
posts
WHERE post_title LIKE '".$bundesselect."'
AND post_title NOT LIKE '".$plaatsdubbel."'
";

?>



Ik zie echter bij controle in de browser dat hij toch enkele plaatsen dubbel wil toevoegen en dus NOT LIKE $plaatsdubbel overslaat.

Iemand een idee?
@Cor
Zoals je zelf al zegt kun je beter gewoon even een rustig nachtje slapen dan dat je er uren tijd instopt.
Ik weet namelijk zeker dat als je morgen weer kijkt je het waarschijnlijk zo hebt opgelost.
Let wel op dat ereg_replace() antiek is. Gebruik preg_replace().
Dat wil ik wel beamen. Daarnaast kun je alle ereg_replace() ook vervangen door bijvoorbeeld str_replace(); te gebruiken. Scheelt een stuk code en je zou het sneller kunnen laten werken. EREG_ stamt uit de POSIX tijd en de nieuwe PREG_ uit de Perl tijd. Perl is wat sneller en bovendien ook effectiever. Zo zal str_replace(); bijvoorbeeld sneller zijn dan preg_replace(); Maar goed, hieronder een voorbeeldje:


<?php

$niet_toegestaan = array("ä", "ö", "ü", "ß", "Ä", "Ö", "Ü");
$wel_toegestaan = array("ae", "oe", "ue", "ss", "Ae", "Oe", "Ue");

$bundeslink = str_replace($niet_toegestaan, $wel_toegestaan, $bundeslink);

// of bijvoorbeeld in een functie
function strip_rare_letters($string){
	$niet_toegestaan = array("ä", "ö", "ü", "ß", "Ä", "Ö", "Ü");
	$wel_toegestaan = array("ae", "oe", "ue", "ss", "Ae", "Oe", "Ue");
	return str_replace($niet_toegestaan, $wel_toegestaan, $string);
}
// nu kun je de zelfde functionaliteit overal in je script gebruiken 
// zonder steeds dezelfde regels te hoeven kopieren.
?>
Hey mensen,

Bedankt voor de hulp en tips.

Ga wat later dan gepland weer verder, maar ik heb geen haast dat scheelt.

Merijn, bedankt voor bovenstaande voorbeelden, dat scheelt inderdaad veel code en is een mooie les voor me.

Heb die replaces inderdaad nog veel meer gebruikt ook in andere projectjes en scripts, ga nu maar eens aanpassen en oefenen.

Voor wat betreft het niet filteren op die ene plaatsnaam ga ik ook maar eens de DB nakijken of hij niet per ongeluk een spatie in het veld heeft staan die je niet ziet.
Desnoods exporteer ik record nog even naar kladblok of ultra edit om zeker te weten dat er niets in veld staat wat er niet hoort en doe een nieuwe import.

Als het lukt horen jullie het, en anders post ik (helaas) nog maar eens.

Reageren