1. #1

    Registriert seit
    28.10.2011
    Beiträge
    630
    Thanked 283 Times in 171 Posts

    Standard [RegXP] Link Replacement

    Ich hab grad irgendwie Ugly oder so, kein plan
    Also,.. Ich möchte von einem System Links replacen lassen, hat zuvor auch alles Problemlos geklappt.
    Grund hierfür ist, dass die Links die "generiert" wurden HTML-Dateien sind, die href's aber selber noch ein .html hinzugefügt werden müssen.

    Also lassen wir des mal replacen:
    PHP-Code:
    $content preg_replace("/<a([^href]+)href=\"([a-zA-Z0-9\-_]+)\">/Uis""<a$1href=\"$2.html\">"$content); 
    Hier mal eine Beispieleingabe:
    PHP-Code:
    <a title="Prophetic Word 2013" href="prophetic_word_2013-1">read more &nbsp»»»</a
    Es fehlt dennoch ein .html im href - Warum replaced der mir des nicht? Irgendwie stehe ich derzeit auf dem Schlauch. Hab schon mehrere Ausdrücke probiert, beispiele:
    PHP-Code:
    // Unbestimmter input
    "/<a(.+)href=\"([a-zA-Z0-9\-_]+)\">/Uis"
    "/<a(.+)href=\"(.+)\">/Uis"

    // Mit & Ohne escape von - bzw _
    "/.....href=\"([a-zA-Z0-9-_]+)\">/Uis"
    "/.....href=\"([a-zA-Z0-9\-\_]+)\">/Uis" 
    Kann mir mal jemand in den Hintern treten und mir sagen warum der Mist nicht funktioniert? ^^

    Edit:
    Was natürlich funktioniert aber sehr unsauber ist, wäre folgendes Beispiel:
    PHP-Code:
    "/<a(.*)href=\"(.*)\">/Uis" 
    Problem: ich muss aufjedenfall davon ausgehen, dass im href nur Alphanumerische Werte mit erlaubten Bindestrich/Unterstrich möglich ist, denn Links könnten auch mit http(s):// beginnen, da soll natürlich kein .html appended werden.

    - - - Aktualisiert - - -

    Ok, hat sich wohl erledigt, bis ich dann mal gecheckt hab dass ich nicht auf dem Produktiven Server bin, sondern auf dem Dev-Server
    Geändert von Bubble Gum (30.05.2013 um 21:15 Uhr)

  2. #2
    Avatar von DMW007
    Registriert seit
    15.11.2011
    Beiträge
    8.089
    Thanked 9.406 Times in 3.242 Posts
    Blog Entries
    5

    Standard AW: [RegXP] Link Replacement

    Code:
    /<a([^href]+)href=\"([a-zA-Z0-9\-_]+)\">/Uis
    Was isn das fürn Pattern? Das kann ja schon mal logisch gesehen niemals matchen 0o
    Wenn die Links alle den gleichen Aufbau wie das Beispiel haben

    PHP-Code:
    $content '<a title="Prophetic Word 2013" href="prophetic_word_2013-1">read more &nbsp; »»»</a> ';
    $content preg_replace('/<a title="([^"]+)" href="([^"]+)">/is''<a title="$1" href="$2.html">'$content); 
    Was soll denn das überhaupt für ein CMS sein, das invalide Links generiert? Würde eher dort das Problem beheben wo es entsteht, und nicht nachträglich noch an den Links rummurksen. Oder versuchst du nachträglich die Links SEO-freundlicher zu machen? Dann wäre eine Rewrite-Regel direkt in der vHost Config sinnvoller.

    Btw: Es heißt RegExp, is ne Abkürzung für Regular Expression.


  3. #3

    Registriert seit
    28.10.2011
    Beiträge
    630
    Thanked 283 Times in 171 Posts

    Standard AW: [RegXP] Link Replacement

    Ist kein CMS was jeder kennt. Selfwritten System

    Die Pages werden im Interface selber über URL angesteuert (Rewriting, blubb...). Sprich, eine Seite die "Testseite" heißt wird über der URL "http://whatelse.tld/Benutzername/testseite" angesteuert - Dies aber auch nur im Interface selber wo man die Seite zusammenklicken kann, als auch in der Preview-Funktion.

    In einer Export-Funktion werden die zusammengeklickten seiten dann via FTP übertragen und im Content selber können sich unter anderem auch Links befinden die zur Seite selbst gehören - Deswegen der replace mit ".html".

    Dass es "Regular Expression" heißt sollte jedem bekannt sein, auch dass man es durch "RegXp" oder "RegExp" umgangssprachlich abkürzt

    Naja, das System hat eh nachholbedarf, bin des derzeit nochmal komplett am neuschreiben zumal ich jetzt erst ganz genau weiß, was benötigt wird. Damals (ist immerhin schon 1- 1/2 jahre her) wollte ein Kunde nur was und es gab keinerlei vorstellungen - Sprich so eine 0-8-15 "ich programmiere mal los" Nummer
    Da das System aber wirklich großen anklang bei div. Leuten hat und viele heiß darauf sind ist dafür eine Geschäftsidee entstanden wobei die Konkurrenz da nicht mithalten kann, da es hierfür gewisse Gründe gibt

Ähnliche Themen

  1. goo.gl Link sicher?
    Von Flori im Forum Security
    Antworten: 3
    Letzter Beitrag: 14.03.2013, 16:06
  2. Falscher Link?
    Von One Way im Forum Internet und Technik
    Antworten: 4
    Letzter Beitrag: 06.07.2012, 15:18
  3. Tp-link
    Von helfen im Forum Hardware
    Antworten: 18
    Letzter Beitrag: 13.03.2012, 15:54
  4. °>link<°
    Von helfen im Forum Fragen & Probleme
    Antworten: 7
    Letzter Beitrag: 03.02.2012, 23:41
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.