Forum: PC-Programmierung Forum Zitate


von emi (Gast)


Lesenswert?

Wie macht man das eigentlich so? Ich will, dass wenn [quote]efef[/quote] 
in der textarea geschrieben wird dann bei submitt der text anders 
formatiert wird, sprich eine div darum gelegt wird um es hervorzuheben.

Jedoch weiß ich nicht ob es schon fertoge php befehle dafür gibt oder 
nicht. Weil ich könnte natürlich gesamte Strings durchsuchen aber das 
wird schon sehr lahm denke ich. Gibt es eine fertige php lösung dazu? 
Sprich gibt es eine FUnktion die die Texte die zwischen [quote][/quote] 
stehen in ein array hineinschreibt?

: Verschoben durch Moderator
von emi (Gast)


Lesenswert?

ich muss wohl den ganzen String in einer Schleife durchgehen oder?
Wie soll ich sonst alles in der richtigen Reihenfolge darstellen?

Jetzt wirds kompliziert denke ich

Hat jemand ein paar Vorschläge?

von Hans (Gast)


Lesenswert?

Dafür bieten sich reguläre Ausdrücke (regular expressions) an. In PHP 
könntest Du die Funktion preg_replace nutzen.

von T.roll (Gast)


Lesenswert?

Es gibt auch eine BBCode-Erweiterung:
http://de3.php.net/bbcode

von emi (Gast)


Lesenswert?

Ich habe jetzt einfach str_ireplace genommen. Das funktioniert soweit 
für die Zitate.
Wollte jetzt aber so ein
 auch noch reinmachen. Wie macht man das aber? Ich habe soetwas noch nie 
gemacht. Gibt es da spezielle Tutorials?

Grundsätzlich muss ich ja den Text durchgehen und ihn durchsuchen nach
 und das was dazwischen steht wandle ich um in ein Bild und füge es 
statt dem Text ein. Die Frage ist  nur noch wie ich es in ein Bild 
wandle. Da muss es doch einen Latex Algorithmus geben der das 
bewerkstelligt oder? Kennt ihr ein Tutorial?

Ich wäre euch sehr dankbar!!

von emi (Gast)


Lesenswert?

Ich hab mich zwar selbst schlau gemacht, jedoch ist mir nicht ganz klar 
wie ich dies genau implementieren soll? Ich brauche soetwas wie eine 
Anleitung, jedoch findet sich zu dem Thema garnichts im Net??

Irgend ne Idee?

von emi (Gast)


Lesenswert?

Keine ideen dazu??

Ich will keine Fertiglösung, nur ein paar Tipps und Tricks welche 
Funktionen ich eventuell in php brauchen könnte...

von Daniel A. (daniel-a)


Lesenswert?

In html5 gibt es mathml.
http://www.tutorialspoint.com/html5/html5_mathml.htm
Mit regulären ausdrücken oder einer art parser kann man da vileicht eine 
formel in mathml umwandeln...

Oder den source code von MediaWiki anschauen, und nachsehen wie es dort 
gelöst wurde.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Daniel A. schrieb:
> Oder den source code von MediaWiki anschauen, und nachsehen wie es dort
> gelöst wurde.

Zumindest hier im Forum wird meiner Erinnerung nach im Hintergrund
tatsächlich ein LaTeX angeworfen, welches die Formel in ein Image
rendert.

Ich glaube mich zu erinnern, dass Andreas sich das vom MediaWiki
abgeguckt hatte.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Jörg Wunsch schrieb:
> Ich glaube mich zu erinnern, dass Andreas sich das vom MediaWiki
> abgeguckt hatte.

Ja, beide basieren auf LaTeX, und beide haben dieselben (kleineren)
Einschränkungen.

Hier findest du weitere Informationen dazu:

  http://www.mediawiki.org/wiki/Texvc

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Hier im Forum wird texvc verwendet. Einfacher geht's mit 
http://www.mathjax.org/.

: Bearbeitet durch Admin
von emi (Gast)


Lesenswert?

Danke für die ANtworten. Aber ehrlich gesagt habe ich noch eine Bitte. 
Könnte mir vielleicht jemand erklären wie die grobe Struktur aussieht 
dies auf einem Webserver mit php zu implementieren?

Ich finde dazu wirklich nur wenig Material im Internet dazu vor allem 
weil ja texvc nichts mit php gemein hat und ein eigenständiges Programm 
ist. Nun genau das ist ja mein Problem.

Also ich habe mir bis jetzt dazu folgendes gedacht:

-)User gibt ein [mat]FORMEL[/mat] ein. Diese Formel kriege ich heraus 
mit pregmatch raus. Diesen speichere ich in eine Variable...

-)Php verbindet sich iwie mir texvc und übergibt ihm den Code. texvc 
macht ein img draus und speichert es an einer bestimmten stelle in der 
db (wobei ich noch nicht weiß ob man imgs einfach so in mysql speichern 
kann oder ob es überhaupt sinnvoll ist). Texvc gibt die Adresse bzw die 
id in der Tabelle dem php script zurück. Und das php script ladet das 
Bild aus der Tabelle wieder runter und schreibt ein <DIV mit Background 
oder <IMG dort hinein wo zuvor das [mat]...[/mat] stand.

Jetzt gibt es aber gewisse Dinge die ich noch nie gemacht habe aber 
gerne lernen würde:
-) Verbindung von php mit texvc (wie soll ich texvc überhaupt auf den 
Server bringen?)

-) Wie funktioniert das Umwandeln in ein Bild

-) Und wie oder wo in aller Welt soll ich die Refernzen der erzeugten 
Bilder hinspeichern? ich hätte gesagt in eine eigene Tabelle kommen alle 
Bilder mit Refernz auf das Thema


-) Das wird alles sehr sehr kompliziert!!

von Hans (Gast)


Lesenswert?

emi schrieb:
> Also ich habe mir bis jetzt dazu folgendes gedacht:
>
> -)User gibt ein [mat]FORMEL[/mat] ein. Diese Formel kriege ich heraus
> mit pregmatch raus. Diesen speichere ich in eine Variable...

Besser: Du speicherst die Formel danach in eine Textdatei.

> -)Php verbindet sich iwie mir texvc und übergibt ihm den Code. texvc
> macht ein img draus und speichert es an einer bestimmten stelle in der
> db

Das ginge z.B. mit der Funktion system(). Damir rufst Du texvc auf. Als 
Parameter bekommt texvc die Textdatei mit der Formel übergeben und den 
Namen der Ausgabedatei (das PNG-Bild). Das liegt nach dem Aufruf also im 
Dateisystem des Servers.

> (wobei ich noch nicht weiß ob man imgs einfach so in mysql speichern
> kann oder ob es überhaupt sinnvoll ist).

Kann man, muss man aber nicht. Entweder Du liest den Inhalt der Datei 
mit PHP ein und speicherst ihn in der Datenbank ab, oder Du gibst der 
Datei eine eindeutige Nummer und legst sie in ein Verzeichnis, das von 
außen über HTTP erreichbar ist. Dann musst Du in den erzeugten HTML-Code 
nur einen Link darauf einbauen. Die Dateinamen kannst Du in der 
Datenbank ablegen.

von emi (Gast)


Lesenswert?

Hans schrieb:
> Das ginge z.B. mit der Funktion system(). Damir rufst Du texvc auf. Als
> Parameter bekommt texvc die Textdatei mit der Formel übergeben und den
> Namen der Ausgabedatei (das PNG-Bild). Das liegt nach dem Aufruf also im
> Dateisystem des Servers.

Aber was ist wenn mehrere gleichzeitig einen Beitrag schreiben? Dann 
greifen mehrere auf gleichzeitig auf das Textfile zu ??

von ??? (Gast)


Lesenswert?

emi schrieb:
> Aber was ist wenn mehrere gleichzeitig einen Beitrag schreiben? Dann
> greifen mehrere auf gleichzeitig auf das Textfile zu ??

Hast Du nur Langeweile, oder verfolgst Du mit deinen Fragen tatsächlich 
ein Ziel?
Warum sollte es für mehrere Beiträge die gleiche Textdatei sein müssen?

von emi (Gast)


Lesenswert?

??? schrieb:
> Warum sollte es für mehrere Beiträge die gleiche Textdatei sein müssen?

Achso du meinst jeder Beitrag soll sein eigenes Textfile erstellen und 
nachdem das Bild durch texvc erstellt wurde wird das textfile wieder 
gelöscht?? Das würde sinn machen!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.