Efterfølgende vil jeg gerne matche min nye variabel op med den oprindelige værdi fra databasen, har prøvet med følgende men har lidt problemer med min query.
$compare = str_replace('-', ' ', $var_mod); $indhold = mysql_query("SELECT * FROM tabel WHERE LCase(name) REGEXP '^a-z- 0-9' '".$compare."'");
Er ikke lige sikker på at REGEXP er den jeg skal have fat i, håber nogen kan hjælpe?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Lad os sige at jeg i min database har en celle med følgende navn "Jens Olsen's"
Nåe jeg så behandler ordet med de tre linjer ovenfor, skulle dette navn gerne blive til "jens-olsens"
Nu vil jeg så gerne matche navnet op i databasen, for at hive yderligere data ud af samme postering. Altså skal jeg have ordet ført tilbage til den oprindelige formatering.
til start kan jeg vende str_replace om, så når jeg frem til "jens olsens"
Ved at bruge Lcase i min query gør jeg feltet name lower case, så forskellen mellem ordet jeg har modificeret og det oprindelige er nu kuns ' før s i olsens.
Har så prøvet at fjerne alle tegn på nær a-z0-9- fra name med regexp, så ville min query nemlig matche det originale ord.
Da du har "smidt" mindst en oplysning væk, nemlig '-tegnet vil du ikke umiddelbart kunne bruge en regex til at matche den gamle værdi med den nye.
Der er også et problem omkring '-'-tegnet. Navne i databasen kan sagtens indeholde '-'-tegn. Men de bliver jo omdannet til ' '-tegn inden du er tilbage igen og søge efter dem i databasen. Den går heller ikke umiddelbart.
Den er dog ikke helt umulig som den med '-tegnet (og de andre tegn som også bliver fjerner med den sidste preg_replace).
Bruger den i forbindelse med noget mod rewrite, prøver at lave så søgemaskine venlig stier som muligt, og derfor får jeg brug for at kunne matche på den her måde, så undgår jeg nemlig at min url skal indeholde tal.
Det kaaaaan vist godt gøres med en regexp ... men i så fald bliver det ikke en specielt effektiv løsning.
Hvad med i stedet at udvide din tabel med en ekstra kolonne som indeholder værdien af url'et som den ser ud efter at have været sendt igennem den er kodeblok. Så kan du bruge den kolonne til at finde væreirne med. Dette ville være langt den effektiveste løsning.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.