3k Aufrufe
Gefragt in Webseiten HTML von
Bin Anfänger.
Habe mit Javascript ein längeres Formular zum ausfüllen erstellt und es soll mit form action ="hallo.php" verschickt werden. Funktioniert nicht.
Nur ein Ausschnitt:
<h2>Bitte tragen Sie Ihre Daten hier ein</h2>

<form method="POST" action="hallo.php">
<p>Name: <input type="Name"></p>
<p>E-Mail: <input type="e-mail" ></p>
<p>Betreff: <input type="text"></p>


</form>


<p>
<fieldset>
<legend>In welcher Region liegt Ihr Objekt?</legend>
Straße:<input type="Straße">Ort:<input type="Ort" >
etc............
<p><input type="submit" value="send">



Die php Datei habe ich abkopiert und so umgeschrieben.
<html>
<body>Welcome <?php echo $_POST["name"]; ?>.<br />
Die Daten werden eingetragen<?php echo $_POST["age"]; ?> Ihre .....</body>
</html>


Nun denke ich liegt es an der php Datei.Ich habe einmal mit einem php editor und einmal mit einem normalen editor erstellt.Gespeichert natürlich mit Pfad etc.
Weiss aber wirklich nicht wo definitiv die Daten zu finden sind??
Das einzige was funktioniert ist über e-mail zu verschicken, und da muß ich die Daten mit dem Editor wieder öffnen und zusammensuchen.
Muß doch eleganter gehen?

Ich mache also einen gravierenden Denkfehler.
.
Für jedeHilfe sehr dankbar

Ein Neuanfänger

13 Antworten

0 Punkte
Beantwortet von katy Mitglied (787 Punkte)
Hallo Neuanfänger,

wo steht da was von JavaScript?

Versendet werden nur die Daten innerhalb <form ...> und </form>, alle <input ...> davor und dahinter werden ignoriert.

in deinem PHP-Script tauchen Bezeichner von Formular-Feldern auf, die im Formular nicht existieren. Achte auch auf Groß-/Kleinschreibung.

Falls dies dein Problem nicht löst müsstest du deinen Quellcode bitte vollständig und nicht so fetzenhaft posten. Evtl. auch mit Quellenagabe woher du dein (zweifelhaftes) PHP-Script hast.

katy
0 Punkte
Beantwortet von
Frage ich mich natürlich auch,es gibt sehr viele Vorlagen für diese rätselhaften welcome oder hello.php.
Ich schau mir das nochmal an,binde jetzt das formular in die Forms ein und mal sehen. Ansonsten poste ich meinen Quellcode vollständig mit Hoffnung auf weitere Hilfe.
Vielen Dank

Ach ja , natürlich Html
Mit Java hatte ich eben angefangen zu lernen und im Geiste war ich schon so weit, ..

BaldProfi??
0 Punkte
Beantwortet von
Nochmals vielen Dank
Das Formular ist in Ordnung und das php neu nachgeschaut.


<html>
<head>
<title> Formulardaten ausgeben </title>
</head>
<body>
<h1>Formulardaten ausgeben</h1>

Hallo, <br>
Ihr Vorname lautet:
<? echo $_POST["vorname"]; ?>.<br>
Ihr Nachname ist:
<? echo $_POST["nachname"]; ?>.<br>

</body>
</html>

Ist nur zur Probe, denn so wie ich verstanden habe muß das komplette html formular in php geschrieben werden.Sieht schon ganz gut aus, nur dass das php script so bleibt wie es ist, also ohne Daten.Wird nix rüber geschickt.
Dafür gibt es sicher auch noch eine Lösung.Nur nicht aufgeben.


Grüße
Baldprofi?
0 Punkte
Beantwortet von katy Mitglied (787 Punkte)
Das Formular ist in Ordnung und das php neu nachgeschaut.
wenn du willst, dass wir dir helfen, solltest du unsere Zweifel daran dadurch zerstreuen, dass du bitte den Code postest. Wenn alles in Ordnung wäre würdest du hier nicht fragen!

Wird nix rüber geschickt.
wie hast du das geprüft? Existiert das Array $_POST überhaupt?

katy
0 Punkte
Beantwortet von
Vielen Dank für die Hilfe

das Prinzip habe ich verstanden

Das ist nur ein probeformular ,meines ist etwas grösser aber was nützt es wenn noch nicht einmal diese Probe funktioniert.

also 1, html

<html>
<body>

<form action="http://....php."
method="POST"> Ihr Vorname: <input type="text" name="vorname"><br>
Ihr Nachname: <input type="text" name="nachname"><br> <input type="submit">
</form>
</html>
</body>


dann das zugehörige php

head>
<title> Formulardaten ausgeben </title>
</head>
<body>
<h1>Formulardaten ausgeben</h1>

Hallo, <br>
Ihr Vorname lautet:
<? echo $_POST["vorname"]; ?>.<br>
Ihr Nachname ist:
<? echo $_POST["nachname"]; ?>.<br>
?>.<br>

</body>
</html>

mit internen Browser oder mit web ,es werden keine Daten übergeben. sondern nur die php seite ohne daten wiedergegeben.
Also fehlt eine Anweisung für die Übertragung?
Für die Hilfe vielen Dank
Baldprofi
0 Punkte
Beantwortet von katy Mitglied (787 Punkte)
was bedeutet:
sondern nur die php seite ohne daten wiedergegeben


Wird der Quelltext angezeigt? Oder einfach eine leere Seite?

katy
0 Punkte
Beantwortet von
Der Quelltext wurde angezeigt aber die Daten die ich im Formular eingegeben hatte wurden nicht übertragen.

Mittlerweile ist das Problem gelöst,die Daten werden übertragen und ich freue mich, denn ich kann weitermachen.
Allerdings habe ich ja nun ein Formular mit label, radio und checkboxes und probiere gerade aus ob auch das in php zu machen ist..Musste überigens auch einen freespace suchen mit php Unterstützung. Also alles step by step

Ich freue mich auf die gute Unterstützung hier im Forum und werde sicherlich bald wieder um Rat fragen müssen
Vielen Dank an alle

Baldprofi
0 Punkte
Beantwortet von katy Mitglied (787 Punkte)
mit anderen Worten: dir stand gar kein Webserver mit PHP bislang zur Verfügung!
Dann ist es ja gut, dass du den Fehler selbst bemerkt hast. Meine Rückfrage in Antwort 6 ging auch schon in die Richtung.

Falls du wieder ein Problem hast schildere möglichst gleich umfassend die Situation mit allen relevanten Fakten. Das war hier für mich ein fürchterliches "aus der Nase ziehen".

Viel Spaß bei deinem Projekt
katy
0 Punkte
Beantwortet von
Nun habe ich eine neue Frage.
Ich habe mit Html Formular und Php Skript eine Datei von den eigenen Dateien hochgeladen. Hat wohl auch funktioniert und ich erhalte diesen Auswurf:

Upload: xxxxxx.html
Type: text/html
Size: 0.3701171875 Kb
Stored in: /srv/www/httpd/phost/e/com/pytalhost/xxxxx/tmp/phpYyErOk

Wie verfahre ich weiter??
Kommt nun SQL zum Einsatz??

Danke

Baldprofi
0 Punkte
Beantwortet von katy Mitglied (787 Punkte)
Nein, das hat mit SQL nix zu tun. Das PHP-Skript hat deine Datei empfangen und sie temporär gespeichert. Nach Beendigung des Skripts wird sie dort gelöscht. Du müsstest sie also vor Skriptende aus dem Temp-Verzeichnis rauskopieren mit dem Befehl move-uploaded-file. Zugriff auf das Temp-File erhältst du über $_FILES.

katy
...