Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

mehrfache SQL Eintraege nach F5 Aktualisierung

Frage Entwicklung PHP

Mitglied: 47856

47856 (Level 1)

05.06.2008, aktualisiert 23.09.2008, 4305 Aufrufe, 6 Kommentare

Folgendes Problem:

Speichert man in SQL-Datenbank über HTMl-Formular irgendwelche Einträge funktioniert erstmal alles ohne Probleme, aber wenn man dann die Taste F5 (Aktualisieren) drückt, speichert er den selben Eintrag nochmal ohne das im Eingabefeld irgendein Zeichen steht.

Wir haben versucht diese $_POST[] Variable mit unset() zu löschen, aber er speichert trotzdem den letzten eingegebenen Text ab.

Habt ihr irgendwelche Ideen???

Schon mal im Vorraus, Danke.

MfG.
Mitglied: Arano
05.06.2008 um 11:55 Uhr
Hallo Webluna.

Diese Frage wurde vor nicht allzu langer Zeit in einem anderem Forum, in dem ich auch unterwegs bin, gestellt.
Eine der Lösungen (die die mir am besten gefällt) ist der HTTP-Statuscode "205 Reset Content" mit einer Headerweiterleitung.

Ich verwende es zwar selber noch nicht, aber ich hatte mir dazu ein Testskript geschrieben das super funktioniert:
01.
<?php 
02.
  if(isset($_POST['name'])){ 
03.
      
04.
     $db=fopen('./db.txt','a+'); 
05.
     fwrite($db,$_POST['name']."\r\n",strlen($_POST['name']."\r\n")); 
06.
     fclose($db); 
07.
      
08.
     header('HTTP/1.1 205 Reset Content'); 
09.
     header('Location: ./index.php'); 
10.
11.
?> 
12.
<html> 
13.
  <head> 
14.
    <title>reload - header - reset content</title> 
15.
  </head> 
16.
  <body> 
17.
   
18.
    <form action="./" method="POST"
19.
      <input type="text" name="name" value="<?php if(isset($_POST['name'])) echo $_POST['name'] ?>"><br> 
20.
      <input type="submit" value="Abschicken"
21.
    </form> 
22.
     
23.
    <hr> 
24.
    Testskript zu <a href="http://www.cybton.com/view_thread,Formular%20Reload%20verhindern,26986,2.html#p282730">http://www.cybton.com/view_thread,Formular%20Reload%20verhindern,26986,2.html#p282730</a> 
25.
     
26.
  </body> 
27.
</html>
http://www.cybton.com/view_thread,Formular+Reload+verhindern,26986,1.ht ...

Gruß Arano
Bitte warten ..
Mitglied: 47856
05.06.2008 um 11:57 Uhr
Das werden wir uns gleich mal anschauen und ausprobieren. Danke.
Bitte warten ..
Mitglied: 47856
09.06.2008 um 08:04 Uhr
Guten Morgen

Ich habe es mir mal angeschaut, nur leider verstehe ich nicht so viel von PHP und mein Partner ist im Urlaub...

header('HTTP/1.1 205 Reset Content');
Die Zeilen habe ich bei mir eingefügt, jedoch hat es nichts bewirkt... ???

MfG.
Bitte warten ..
Mitglied: dtzzzzzz
22.09.2008 um 16:24 Uhr
Hi,

1. Lösung:

Du fragst die Datenbank mit den Werten ab, die du speichern willst, ob diese indentischen Werte bereits dort existieren und wenn nein, dann speicherst du sie ab, sonst eben nicht. Dadurch kannst du das einfach vermeiden, stellt natürlich aber zusätzliche Abfrage an die DB dar.

2. Lösung:

Du machst das mit AJAX, da dort die Eingaben dann nur in der JavaScript onClick-Anweisung an die PHP übergeben werden und gespeichert werden und nicht mehr bei F5-Drücken.
Bitte warten ..
Mitglied: Arano
22.09.2008 um 23:37 Uhr
Nabend...

zu 2.:
An sich eine mögliche Lösung, aber:
Dies setzt voraus das Javascript aktiviert ist, ist das nicht der Fall, __muss__ es eine alternative geben und diese läuft über den normalen Submit-Weg - schon stehen wir wieder vor der selben frage ;)

~Arano
Bitte warten ..
Mitglied: dtzzzzzz
23.09.2008 um 00:07 Uhr
Nun, man kann nicht alles haben. AJAX wird momentan sehr viel genutzt. Ansonsten sieh Lösung 1.
Bitte warten ..
Ähnliche Inhalte
Windows Server
SQL-Runtime Lizenzierung auf VM mit HA Failover (2)

Frage von Tharen zum Thema Windows Server ...

Datenbanken
gelöst SQL ORDER BY und Join mit 2 Tabellen (7)

Frage von Dipps zum Thema Datenbanken ...

Microsoft
gelöst Licensing Server SQL 2014 (8)

Frage von TECHGENE zum Thema Microsoft ...

Datenbanken
gelöst MS SQL Abfragen und Formulare in Webseite einbinden (3)

Frage von Machello zum Thema Datenbanken ...

Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(5)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Statische Routen mit Shorewall, ISC-DHCP Server konfigurieren für Android Devices (24)

Frage von terminator zum Thema LAN, WAN, Wireless ...

Server
gelöst Wie erkennen, dass nur deutsche IPs Zugang zu einer Website haben? (22)

Frage von Coreknabe zum Thema Server ...

Windows Server
Exchange HyperV Prozessorlast (18)

Frage von theoberlin zum Thema Windows Server ...

Hardware
16-20 Port POE Switch mit VLAN (18)

Frage von thomasreischer zum Thema Hardware ...