php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.12.2004, 14:10  
Erfahrener Benutzer
 
Registriert seit: 01.08.2004
Beiträge: 113
Kofi
Kofi eine Nachricht über ICQ schicken
Standard Textbearbeitung

Die User können bei einem Formular eine "Neuigkeit" oder sowas eingeben, was dann später angezeigt wird. Bevor ihr Text gespeichert wird, möchte ich den folgendendermaßen bearbeiten:

Aus "[BILD=2]" z.b. soll werden "[img]pictures/2.jpg[/img]", das heißt, das Bild mit der entsprechden ID soll an der Stelle angezeigt werden, so dass die User keinen HTML Code nehmen müssen sondern diese Art Code.

Das Problem ist eben, dass die 2 natürlich variabel sein soll, das gleiche also auch mit "[BILD=3]" gehen soll. Wie mache ich das?
Kofi ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.12.2004, 14:14  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.235
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Für so etwas gibt es regular expressions und entsprechende Funktionen, siehe PHP-Manual.

Die Frage ist nun: Willst du verstehen, wie die funktionieren, um auch andere dieser Tags später noch selber machen zu können oder willst du einfach jetzt sofort das konkrete Beispiel machen.

Bei Variante 1 empfehle ich dir eine Woche Geduld und intensives Selbststudium...
mepeisen ist offline  
Alt 22.12.2004, 14:25  
Erfahrener Benutzer
 
Registriert seit: 01.08.2004
Beiträge: 113
Kofi
Kofi eine Nachricht über ICQ schicken
Standard

Hmm, wie wärs mit Variante zwei ...
Kofi ist offline  
Alt 22.12.2004, 16:44  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

eine primitive lösung ... ^^
Code:
<?php

    $foo = '[BILD=1]';
    $bar = substr( $foo, 6, 2 );
    
    if( is_numeric($bar) )
    {
        echo 'pictures/' . $bar . '.jpg';
    }
    else
    {
        echo 'pictures/' . $bar{0} . '.jpg';
    }
    

?>
erlaubt zweistellige zahlen.
naja.
imported_Ben ist offline  
Alt 23.12.2004, 20:00  
Erfahrener Benutzer
 
Registriert seit: 01.08.2004
Beiträge: 113
Kofi
Kofi eine Nachricht über ICQ schicken
Standard

Also, ich hab mich mal durch die regular expressions durchgewühlt. Ich benutze die Funktion preg_match.
PHP-Code:
   preg_match("/\[IMAGE=.+\]/"$text$matches); 
Das Problem ist nur, dass wenn ich folgenden Text habe:
PHP-Code:
$text "Test der Funktion [IMAGE=1] blabla [IMAGE=2]"
ist das result "[IMAGE=1] blabla [IMAGE=2]".
Momentan lasse ich als Result jeden String zu, der mit "[IMAGE=" anfängt, mit "]" aufhört und dazwischen beliebig viele Strings hat.

Ich brauche irgendeine Möglichkeit, zu sagen, dass dazwischen nur Zahlen sein dürfen. Und das kannich absolut nicht finden. Wie mache ich das?
Kofi ist offline  
Alt 23.12.2004, 21:25  
Erfahrener Benutzer
 
Registriert seit: 29.10.2004
Beiträge: 1.781
derHund
Standard

wenn du ersetzen willst, nimm preg_replace ...

\d steht für alle ziffern

und weils grad so feierlich ist:
http://pcre.nophia.de/evaluate/b8308...dex.php#output

den php-code kriegst du hoffentlich selbst zusammen.
__________________
derHund ist offline  
Alt 24.12.2004, 14:32  
Erfahrener Benutzer
 
Registriert seit: 01.08.2004
Beiträge: 113
Kofi
Kofi eine Nachricht über ICQ schicken
Standard

Yeeehaaa... mann bist du afu Zack
Kofi ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
textbearbeitung mit php, wie mache ich eine textbearbeitung, php textbearbeitung, textbearbeitung durch php

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:38 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.