ThWboard Support-Forum (Archiv)

Ort: / Boardübersicht / Probleme und Fragen / Probleme mit EDIT.PHP bei grafsicher Umstellung


Seite 1 von 1

Mannie schrieb am 11.11.2005 um 23:50 Uhr

Moin,

ich hab noch 2.81 und werte gerade das Board grafisch auf.
Unter anderem sollen die Buttons durch Grafiken ersetzt werden.

Kein Thema an sich.
Der normale SUBMIT- Befehl:

<input type="submit" name="Submit" value="Post Updaten">

wird HTML-Referenz durch folgenden Code ersetzt:

<input type="image" name="Submit" src="templates/3dstyle/images/postupdate.gif">

Leider wird der Post nicht editiert, die EDIT.PHP ruft sich erneut ohne Parameter (?postid=1234) auf, man befindet sich erneut im Edit-Formular mit verlorengegangenen Änderungen.

Bei anderen Forms habe ich diese Probleme nicht (Profil-Änderung, Lastthreads, Sortierungen der Memberlist etc.), nur bei der EDIT.PHP und der Tagbar (was aber ja nicht hier hin gehört).

Hat jemand schon ähnliches versucht und gelöst?
Ich steh vor einem Rätsel.....

PhoenixDH schrieb am 12.11.2005 um 02:01 Uhr

type="image"

Da steckt der Fehler !

Mannie schrieb am 12.11.2005 um 12:27 Uhr

http://edition-w3.de/TR/1999/REC-html401-19991224/interact/forms.html#h-17.4.1

http://de.selfhtml.org/html/formulare/formularbuttons.htm

Wo steckt da der Fehler?
Insbesondere daran, dass es nur an 2 Stellen hakt, nicht aber auf dem ganzen Rest des Forums?

PhoenixDH schrieb am 12.11.2005 um 17:04 Uhr

Anstatt image muss da submit hin, sonst schickt er das Formular net ab glaub ich, aber das ist def. der Fehler !

Mannie schrieb am 12.11.2005 um 17:40 Uhr

Hast du dir mal die Links angesehen?
Wahrscheinlich nicht?
Wenn der Button ohne Funktion wäre, würde sich das Formular ja nicht selbst erneut aufrufen.

Aber hier noch mal ein Auszug aus SELFHTML:

Mit <input type="submit"> definieren Sie einen Absendebutton (input = Eingabe, submit = bestätigen). Beim Anklicken dieses Buttons werden die Formulardaten abgeschickt, und es wird die Adresse aufgerufen, die im einleitenden <form>-Tag beim Attribut action angegeben ist. Zur unterschiedlichen weiteren Behandlung der übermittelten Daten können Sie mehrere Absendebuttons mit name-Attribut verwenden.
Mit <input type="reset"> definieren Sie einen Abbrechen-Button (reset = zurücksetzen). Eingegebene Daten werden verworfen und nicht abgeschickt.
...
Mit <input type="image"> definieren Sie einen grafischen Button (input = Eingabe). Die gewünschte Grafikdatei bestimmen Sie mit dem Attribut src (src = source = Quelle). Weisen Sie eine geeignete Grafik vom Typ GIF, JPEG oder PNG zu.

PhoenixDH schrieb am 12.11.2005 um 18:34 Uhr

Ich habe das bei mir über css und Klassen gemacht, und habe auch type=submit und es klappt ! Allerdings habe ich das nicht bei diesem Button verwendet !

Aber kannst hier gerne mal auf der Hauptseite schaun, links im Menu die beiden Suchfelder ! www.tuning-freaks-pfalz.de

Mannie schrieb am 12.11.2005 um 19:08 Uhr

Die "normalen" Buttons sind bei mir auch über CSS formatiert.
Schriftfarbe, Schriftgröße, Schriftart ect. sind aber bei Grafiken irrelevant.
Deswegen KANN man grafische Buttons nicht über CSS formatieren.

PhoenixDH schrieb am 12.11.2005 um 19:24 Uhr

Klar net:

.go
{
background-image: url(http://www.url.de);
}

Mannie schrieb am 12.11.2005 um 20:19 Uhr

Was willst du mir jetzt damit sagen?
Damit formatierst du den Hintergrund, nicht die Grafik selbst.
In einer Tabelle würde dann diese komplett mit dieser Grafik gefüllt werden.

Wenn du in einem CSS-Style-Sheet die Buttons formatierst, dann deswegen, um ein allgemeines Layout allen Button zuzusprechen.
Das entfällt aber bei Buttons mit Grafiken, da diese keine Formatierungen mehr brauchen sondern nur die Zuweisung der Grafik.
Diese Zuweisung funktioniert auch mit

<type="image"...>

in allen Bereichen, bis auf die EDIT.PHP und der Tagbar.

Wenn es also überall funktioniert, bis auf diese zwei Ausnahmen, kann es nicht an dem Gebrauch des Codes, sondern an der Quelldatei nur selbst liegen.
Und genau das ist mein Problem.

Mannie schrieb am 21.11.2005 um 11:43 Uhr

So, das Problem wird etwas konkreter, nachdem ich es auch bei NEWTOPIC.PHP habe.

Beide Seiten (EDIT.PHP / NEWTOPIC.PHP) benutzen folgenden Anfangsquelklcode:

if( !isset($Submit) )
{
        $j = 1;
.
.
.

Nur diese beiden Seiten anscheinend, und die machen auch einzig Probleme, wenn ich in der HTML-Vorlage statt "type=submit" nun "type=image" eingebe.
Witzigerweise wird ja der Name ("name=Submit") abgefragt, der ja nach wie vor der gleiche ist.

Mannie schrieb am 21.11.2005 um 19:47 Uhr

So, für alle die es wissen wollen:
In den beiden Dateien darf kein direktes Bild im Submit-Befehl des Form-Befehls stehen.
Stattdessen ist es nötig, über eine CSS-Formatierung eine Button zu kreiren, der als Hintergrundbild dient.
Ungefähr so:

input.mainoption {
        background: #000000 url(templates/3dstyle/images/buttonlang_roh.gif); border: solid 1px #000000;
        font-weight : bold; color: #FFFFFF; }

Der Aufruf in der Template-Datei erfolgt dann ungefähr so:

<input type="submit" name="Submit" class="mainoption" style="height: 28px" value="Posting updaten">

Abgeschaut aus PHPBB und funktioniert.

Seite 1 von 1