Also vorweg Danke für Deine Geduld und Hilfestellung. Ich habe schon ein schlechtes Gewissen vor lauter Fragen
Die Seite welche ich baue ist mein erstes Projekt (bereits fertig) und mehr oder weniger als eine 1-Seite Landingpage für Events gedacht bis ich dann fitter im programmieren bin - bis jetzt programmiert in HTML & CSS. Das einzige was zum klicken gedacht war, ist der Ticket-Kauf Button und selbst der leitet dann auf eine externe Seite unseres Ticket Partner weiter. Deswegen bitte um Nachsicht wenn ich mich bei PHP und SQL etwas unwissend anstelle. Deine Infos sauge ich jedenfalls auf, suche im Netz nach Informationen und speichere mir auch jeden einzelnen Link ab. Die Materie ist interessant und ich bin Wissbegierig!
Um das zu testen brauchst du ein input mit type=text (oder ohne type-Attribut) - bei type=email sorgt der Browser schon dafür dass da eine E-Mail-Adresse drin steht, allerdings kannst du dich nicht darauf verlassen das der Browser die Prüfung übernimmt: Formulare lassen sich manipulieren bzw. nachbauen, die Daten können also auch von wo anders her kommen.
stelle ich type=text (oder ohne) ein, dann bekomme ich eine weiße Seite nach der ' Eingabe. Aber gut, zumindest weiß ich jetzt auf was ich achten muss und kann selbst noch ein wenig herum probieren.
So wie ich es in der Code-Zeile geschrieben habe: htmlspezialchars() wird nur auf die Variable mit den Daten angewandt.
Hopsa, das habe ich übersehen.
Zur Verständnis: Mein Code hat mit htmlspezialchars() den kompletten echo String eingebunden.
Du hingegen nimmst nur die Variable - so würde ich es mir erklären - weil diese an die DB weitergeleitet wird und durch htmlspezialchars() nicht manipuliert werden kann!?
Falscher Ansatz. Vergiss die Weiterleiterei. Das ist ja gerade der Vorteil bei Affenformularen: die Fehlerbehandlung findet in einem Script statt, irgendwelche Weiterleitungen sind nicht nötig. Wenn das Script nach dem Abschicken des Formulars wieder aufgerufen wird, wird geprüft ob die Daten ok sind. Wenn ja werden sie gespeichert, wenn nein, wird eine Fehlermeldung ausgegeben und anschließend wieder das Formular (einschließlich bereits eingegebener Daten). Beschäftige dich mit dem Thema EVA-Prinzip.
Ich habe hier ein Affenformular gefunden.
Kann ich es verwenden wenn ich es auf mein Formular anpasse?
Ich brauche kann für die Überprüfung die Punkte für den Nachname durch Mail ersetzen und die Punkte für "Anzahl" weglassen.
Aber Frage, wie verknüpfe ich dann das Affenformular mit der newsletter.php? Oder reicht es wenn am Server eine affenformular.php -Datei liegt?
Was noch dazukommen wird ist eine DSGVO-Zustimmung...
Die beiden Zeilen mit prepare und execute sind völlig ok und können so bleiben (laut #13 funktioniert das Speichern ja auch). Das "Problem" ist der while-Block danach: da versuchst du mit fetch() irgendwelche Daten zu holen ohne vorher mit SELECT welche abgefragt zu haben. Was an der Stelle richtig ist weiß ich nicht: du hast noch nicht verraten was nach dem Speichern überhaupt passieren soll. Und wenn du irgendwo Code kopierst: du musst den dann schon auch verstehen, sonst kommst du nie auf einen grünen Zweig, immer nur irgendwo Fetzen zusammen zu kopieren funktioniert nicht.
Ich habe meine Quelle oben editiert.
Abfragen will ich gar nichts. Es soll nur ein Eintrag in die DB gemacht werden, deswegen habe ich die Select * From Abfrage durch ein INSERT INTO ersetzt.