Beiträge: 2.267
Themen: 33
Registriert seit: 25.05.2018
MyBB-Version: 1.8.38
Hallo liebe Community,
ich brauchte mal einen Gedankenschubs, da ich etwas verwirrt bin.
In meinem Plugin befindet sich ein Formular mit Textfeld und Optionsliste.
Beide Eingaben werden per Submit-Button in die Datenbank geschrieben - funktioniert alles perfekt.
Nach Submit bleibt allerdings das Formular immer mit den letzten Eingaben gefüllt.
Das ist prinzipiell nicht schlimm. Ich hätte aber lieber, dass das Textfeld geleert und die Optionsliste auf default-value zurückgesetzt wird.
Wo habe ich hier einen Denkfehler?
Ich mache nach Submit ein Redirect auf die gleiche Seite. Entsteht da evtl. das "Problem"?
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
Grundsätzlich werden Formulare nach dem Absenden nicht befüllt. Wenn dies der Fall ist, wurde das wahrscheinlich entsprechend programmiert. Ohne Code kann ich da leider nicht weiterhelfen.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 1.761
Themen: 22
Registriert seit: 18.02.2017
MyBB-Version: 1.8.*
ganz blöde Idee: könnte das auch der dämliche Autofill des Browsers sein?
Beiträge: 2.267
Themen: 33
Registriert seit: 25.05.2018
MyBB-Version: 1.8.38
Hmm Lu, gute Frage. Wie kann ich das denn testen?
Ich mache ja eigentlich nichts Verrücktes. Hier ist das form:
Code:
<td class="trow2" align="center"><input type="text" name="zjob" value="{$mybb->user[\'zjob\']}" /></td>
<td class="trow2" align="center">
<select name="zjid">
<option value="">Betrieb auswählen</option>
{$zjobs_options_bit}
</select>
</td>
</tr>
<tr>
<td class="trow2" colspan="2" align="center">
<input type="hidden" name="action" value="join_zjob" />
<input type="submit" value="{$lang->jobliste_zjoin}" name="join_zjobs" class="button" />
</td>
Und hier verarbeite ich´s:
PHP-Code:
elseif($mybb->input['action'] == "join_zjob") {
$new_record2 = array(
"zjid" => (int)$mybb->get_input('zjid'),
"zjob" => $db->escape_string($mybb->get_input('zjob').""."(NB)")
);
$db->update_query("users", $new_record2, "uid = '$uid'");
redirect("misc.php?action=jobliste", "{$lang->jobliste_add_zjob}");
}
elseif steht in dem Fall, weil vorher noch andere Aktionen möglich sind.
Es ist nicht weiter schlimm, aber irgendwie stehe ich gerade auf der Leitung.
Beiträge: 1.136
Themen: 39
Registriert seit: 27.08.2014
06.02.2022, 12:37
(Dieser Beitrag wurde zuletzt bearbeitet: 06.02.2022, 12:41 von itsmeJAY.)
Hat das Formular eine „action“? Ohne Code ist es schwer dies nachvollziehen zu können.
//edit: oh, der Code steht ja oben. Entweder ich bin blind oder sehe ich keine <form>
Beiträge: 2.267
Themen: 33
Registriert seit: 25.05.2018
MyBB-Version: 1.8.38
Hi JAY
doch, der form-Tag ist natürlich da. Ich wollte nur nicht alles mit hier reinkopieren.
Beiträge: 1.721
Themen: 177
Registriert seit: 08.02.2018
MyBB-Version: 1.8.37
Bei meinen Formularen ist wahlweise gegeben, das beim Ausfüllen eines Eingabefeldes ein Cookie gesetzt wird oder nciht.
Vllt. hilft dieser Hinweis zu einer Lösungsfindung bei.
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an! ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools ◀ [
Unixzeit ⇔ Realzeit] ♦ [
BOM-Finder] ♦ [
SQL-Prefix-Changer] ♦ [
USV-Rechner] ♦ [
PlugIns]
Beiträge: 1.136
Themen: 39
Registriert seit: 27.08.2014
(06.02.2022, 12:49)Schnapsnase schrieb: Hi JAY
doch, der form-Tag ist natürlich da. Ich wollte nur nicht alles mit hier reinkopieren.
Hmm, welche Methode hat die Form? POST oder GET?
Beiträge: 2.267
Themen: 33
Registriert seit: 25.05.2018
MyBB-Version: 1.8.38
@JAY
Die Methode ist "Post".
Spielt das eine Rolle?
@Gerti
Was soll ich hier mit einem Cookie?
Das übersteigt meine Vorstellungskraft.
Beiträge: 1.761
Themen: 22
Registriert seit: 18.02.2017
MyBB-Version: 1.8.*
@Schnapsnase welchen Browser nutzt du denn, ggf. auch mal mit einem anderen gegentesten und in die Einstellungen der Browser schauen