Warum speichert der Editor Leerzeichen als '+' ??

Gesperrt
FrankHoffmann
Beiträge: 149
Registriert: Sa 21. Jun 2003, 14:03
Kontaktdaten:

Warum speichert der Editor Leerzeichen als '+' ??

Beitrag von FrankHoffmann »

Hallo,

wenn ich mit dem Standardeditor einen Artikel schreibe, werden Leerzeichen als Pluszeichen (+) in MySQL abgespeichert. Das hat für das Modul Artikelliste zur Folge, das eine Überschift so aussieht:
Das+ist+eine+Überschrift

Ist das ein Bug oder ein Feature?
ccccccccc
willi
Beiträge: 4
Registriert: Di 19. Aug 2003, 17:47
Kontaktdaten:

Sonderzeichen in der Artikelliste

Beitrag von willi »

Hallo,

neuerdings werden alle Artikelinhalte "URL enkodiert", bevor sie in die Datenbank gespeichert werden.
D.h. fast alle nicht alphanumerischen Zeichen werden durch %## ersetzt, wobei ## ein Hexadezimaler Wert ist.
Leerzeichen werden durch + ersetzt.
Das Pluszeichen selbst wird auch urlenkodiert.
Damit können auch Pluszeichen im Insite-Editing editiert und angezeigt werden, die vorher immer verschwunden sind.
Das war natürlich nicht schön.
Jetzt muss aber jeder Inhalt aus der Content Tabelle, bevor er an den Bildschirm ausgegeben wird, wieder "URL kodiert" werden.
Dazu gibt's in PHP die Funktion urldecode($string)

Grüsse :)
Contenido Team
t-obi-wan
Beiträge: 17
Registriert: Mi 20. Aug 2003, 17:27
Wohnort: München
Kontaktdaten:

Re: Sonderzeichen in der Artikelliste

Beitrag von t-obi-wan »

willi hat geschrieben:Hallo,

neuerdings werden alle Artikelinhalte "URL enkodiert", bevor sie in die Datenbank gespeichert werden.
D.h. fast alle nicht alphanumerischen Zeichen werden durch %## ersetzt, wobei ## ein Hexadezimaler Wert ist.
Leerzeichen werden durch + ersetzt.
Das Pluszeichen selbst wird auch urlenkodiert.
Damit können auch Pluszeichen im Insite-Editing editiert und angezeigt werden, die vorher immer verschwunden sind.
Das war natürlich nicht schön.
Jetzt muss aber jeder Inhalt aus der Content Tabelle, bevor er an den Bildschirm ausgegeben wird, wieder "URL kodiert" werden.
Dazu gibt's in PHP die Funktion urldecode($string)

Grüsse :)
Hallo,

mein erster Beitrag hier.

habe den "bugfix" con_type.sql.txt runtergeladen die Tabelle geleert neu eingespielt und jetzt hab ich ein "problem"

Was bitte soll mir dieser Satz sagen:

Ein kleines Mittel gegen Pluszeichen. Die Daten in der Tabelle con_type können durch diese ersetzt werden. ACHTUNG: Inhalt vorher sichern und Tabelle nicht löschen (nur Inhalte)!!! Die Datei umbenennen in 'con_type.sql'.
---> Nach dem Einspielen die höchste ID mit dem Eintrag in der con_sequence abgleichen.<---

Welche ID's sind gemeint, und wo (phpadmin) änder ich die.

danke für DEN Tip

Viele Grüsse aus München

Tobias
willi
Beiträge: 4
Registriert: Di 19. Aug 2003, 17:47
Kontaktdaten:

id in con_sequence abgleichen

Beitrag von willi »

Hallo,

Contenido verwendet aus DB Kompatibiltätsgründen kein "autoincrement", welches man in den Tabellen einstellen kann, sondern verwaltet das erzeugen der nächsten Id (Zeilennummer) generell über die Tabelle "con_sequnce". Wenn in irgendeiner Tabelle ein neuer Eintrag vorgenommen wird, wird die "nextid" dieser Tabelle aus der "con_sequence" geholt (und automatisch um eins erhöht).
Wenn die Tabelle "con_type" geleert und der neue Inhalt eingespielt wird, muss der höchste Wert in der Spalte "idtype" in con_type mit dem Wert in der Spalte "nextid" in con_sequence" abgeglichen werden, wobei der Wert in der Spalte "seq_name" [con_type] sein muss.
Genauer: der Wert in "nextid" (con_sequence) muss um eins höher sein, als in "idtype" (con_type).

Gruss

Willi
Contenido Team
t-obi-wan
Beiträge: 17
Registriert: Mi 20. Aug 2003, 17:27
Wohnort: München
Kontaktdaten:

Re: id in con_sequence abgleichen

Beitrag von t-obi-wan »

willi hat geschrieben:Hallo,

Contenido verwendet aus DB Kompatibiltätsgründen kein "autoincrement", welches man in den Tabellen einstellen kann, sondern verwaltet das erzeugen der nächsten Id (Zeilennummer) generell über die Tabelle "con_sequnce". Wenn in irgendeiner Tabelle ein neuer Eintrag vorgenommen wird, wird die "nextid" dieser Tabelle aus der "con_sequence" geholt (und automatisch um eins erhöht).
Wenn die Tabelle "con_type" geleert und der neue Inhalt eingespielt wird, muss der höchste Wert in der Spalte "idtype" in con_type mit dem Wert in der Spalte "nextid" in con_sequence" abgeglichen werden, wobei der Wert in der Spalte "seq_name" [con_type] sein muss.
Genauer: der Wert in "nextid" (con_sequence) muss um eins höher sein, als in "idtype" (con_type).

Gruss

Willi
Hallo Willi,

AHA :roll: sorry checke garnix hab auch grade setup probleme mit der neuen Version hat sich somit erstmal erledigt.
da kriege ich immer :

Warning: fopen(logs/upgradeerrorlog.txt): failed to open stream: Permission denied in /home/www/web73/html/contenido/upgrade.php on line 66
Could not open file errorlog.txt in directory /home/www/web73/html/contenido

obwohl alle dateien 777 haben usw. :cry:

sorry aber bin kein PHP freak, fange gerade erst an mit den sachen und bin zugegebener massen überfordert.

tobias
-= Das Genie des Wissenden ist ohne das Genie des Verstehenden wertlos=-
Gesperrt