Autor Beitrag
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 14:23 
Hallo
habe jetzt mal ein Php Script gemacht des so aussieht:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
<?PHP
require_once("config.php");

if(isset($_POST['name'])){
    $tbl_scriptmaker_users = $_POST['stufe'];
    mysql_query("INSERT INTO $tbl_scriptmaker_users (userid, username, passwort, vorname, nachname, straße, plz, ort, gebdatum, Email) VALUES ('$_POST[userid]', '$_POST[username]','$_POST[passwort]','$_POST[vorname]','$_POST[nachname]','$_POST[straße]','$_POST[plz]','$_POST[ort]','$_POST[gebdatum]','$_POST[Email]')");
} //ende if
mysql_close();
?>

hab auch noch ne config
nur wie übergib ich die daten von den editfeldern bei delphi an das PhPp script?
lg


Moderiert von user profile iconNarses: Topic aus VCL (Visual Component Library) verschoben am Do 18.02.2010 um 23:16
Moderiert von user profile iconNarses: Titel geändert.
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 15:38 
kan mir den keiner helfen?
jfheins
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 918
Erhaltene Danke: 158

Win 10
VS 2013, VS2015
BeitragVerfasst: Mi 17.02.10 15:51 
Benutze die Indys, bzw. im speziellen TIdHTTP.Post() ( www.indyproject.org/...t_TIdCustomHTTP.html )
Beispiele solltest du auch welche finden (wenn du suchst - z.B. nach "idhttp post beispiel")
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 15:53 
ich such ja schon die ganze zeit und ich benutze tidhttp
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mi 17.02.10 16:05 
Hier gilt immernoch, pushen erst nach 24 Stunden..
Suche -> IdHHTP Post -> 3. Thread: www.delphi-forum.de/...ighlight=idhttp+post
Da steht irgendwo in der Mitte, wie das im Prinzip funktioniert.

_________________
PROGRAMMER: A device for converting coffee into software.
jfheins
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 918
Erhaltene Danke: 158

Win 10
VS 2013, VS2015
BeitragVerfasst: Mi 17.02.10 16:06 
Schön ... also ich komme zum Beispiel auf diesen Post: www.delphi-forum.de/...HTTPPost_4231,0.html - sieht für mich eigentlich nach einem schönen kleinen netten Beispiel aus ;)
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: Mi 17.02.10 16:07 
user profile iconmaier1990 hat folgendes geschrieben Zum zitierten Posting springen:
kan mir den keiner helfen?

Pushen ist erst nach 24 Stunden erlaubt, aber durch meinen Hinweis steht dein Thread wieder ganz oben. :wink:
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 16:13 
oh sorry wusst ich nicht
Kannst du mir vllt. helfen??
platzwart
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1054
Erhaltene Danke: 78

Win 7, Ubuntu 9.10
Delphi 2007 Pro, C++, Qt
BeitragVerfasst: Mi 17.02.10 16:18 
Das war ja schon wieder ein Push...

_________________
Wissenschaft schafft Wissenschaft, denn Wissenschaft ist Wissenschaft, die mit Wissen und Schaffen Wissen schafft. (myself)
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mi 17.02.10 16:41 
Hast du dir meinen Link schon angesehen?

Außerdem hattest du vor 2 Wochen schonmal ein Problem mit Post, und damals laut deiner Aussage ans Laufen bekommen, wo ist also der Unterschied zu dem aktuellen Problem?
www.delphi-forum.de/viewtopic.php?t=97589

_________________
PROGRAMMER: A device for converting coffee into software.
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 17:00 
Weil des andere mein Mail Client war.
Und das ist jetzt für mein Registrierunggsformular.
Ja dein Link hab ich mir angesehen werde aber daraus nicht schlau
lg
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mi 17.02.10 17:58 
user profile iconmaier1990 hat folgendes geschrieben Zum zitierten Posting springen:
Weil des andere mein Mail Client war.
Und das ist jetzt für mein Registrierunggsformular.

Das ändert doch nichts an der Tatsache, WIE die Daten übergeben werden..? Oder irre ich mich?
Sollen wir den Quellcode von DEINEM Mail Client nun so umschreiben, dass er auch auf dein neues Problem passt? Theoretisch musst du doch nur die Post-Bezeichner sowie die Namen der Edit Felder anpassen.

_________________
PROGRAMMER: A device for converting coffee into software.
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 18:03 
das ist mein php script:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
<?PHP
require_once("config.php");

if(isset($_POST['name'])){
    
    mysql_query("INSERT INTO scriptmaker_users (username, passwort, vorname, nachname, strasse, plz, ort, gebdatum, Email) VALUES ('$_POST[username]','$_POST[passwort]','$_POST[vorname]','$_POST[nachname]','$_POST[strasse]','$_POST[plz]','$_POST[ort]','$_POST[gebdatum]','$_POST[Email]')");
} //ende if
mysql_close();
echo("Erfolgreich Registriert");
?>


und das mein code für den button:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
var
  data: TIdMultiPartFormDataStream;
begin
  data := TIdMultiPartFormDataStream.Create;
  try
    { add the used parameters for the script }
    data.AddFormField('username', username.Text);
    data.AddFormField('passwort', passwort.text);
    data.AddFormField('vorname', vorname.text);
    data.AddFormField('nachname', nachname.text);
    data.AddFormField('strasse', strasse.text);
    data.AddFormField('plz', plz.text);
    data.AddFormField('ort', ort.text);
    data.AddFormField('gebdatum', gebdatum.text);
    data.AddFormField('Email', Email.text);


    { Call the Post method of TIdHTTP and read the result into TMemo }
    Memo1.Lines.Text := form1.IdHTTP1.Post('http://www.chiller4fun.de/addons/login.php', data);
   finally
    data.Free;

wen ich des programm ausprobiere und den button drücke wird im memo nur Erfolgreich registriert ausgegeben, aber in der MySql Tabelle wurde nichts gespeichert.
Was ist daran falsch??
lg
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mi 17.02.10 18:12 
Na endlich, wir kommen der Sache näher..

Das ganze hat aber nichts mehr mit Delphi zu tun, sondern ist ein Problem in deinem PHP Skript.
Nun schau dir mal bitte die Bedingung an, wann etwas in die Datenbank geschrieben werden soll. Riichtig, wenn "name" gesetzt ist. In den Postdaten gibt aber nur username und vorname. Also: Korrektes Verhalten. :)

_________________
PROGRAMMER: A device for converting coffee into software.
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 18:23 
aber der delphi teil ist schon mal richtig oder?

Edit:
Hab mir mal das Php Script angeschaut aber ich kann den Fehler nicht finden.
Was meinst du mit Name?
platzwart
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1054
Erhaltene Danke: 78

Win 7, Ubuntu 9.10
Delphi 2007 Pro, C++, Qt
BeitragVerfasst: Mi 17.02.10 18:46 
Das ist jetzt nicht dein Ernst?!?!?

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
<?PHP
require_once("config.php");

if(isset($_POST['name'])){
    
    mysql_query("INSERT INTO scriptmaker_users (username, passwort, vorname, nachname, strasse, plz, ort, gebdatum, Email) VALUES ('$_POST[username]','$_POST[passwort]','$_POST[vorname]','$_POST[nachname]','$_POST[strasse]','$_POST[plz]','$_POST[ort]','$_POST[gebdatum]','$_POST[Email]')");
} //ende if
mysql_close();
echo("Erfolgreich Registriert");
?>



ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
var
  data: TIdMultiPartFormDataStream;
begin
  data := TIdMultiPartFormDataStream.Create;
  try
    { add the used parameters for the script }
    data.AddFormField('username'username.Text);
    data.AddFormField('passwort', passwort.text);
    data.AddFormField('vorname', vorname.text);
    data.AddFormField('nachname', nachname.text);
    data.AddFormField('strasse', strasse.text);
    data.AddFormField('plz', plz.text);
    data.AddFormField('ort', ort.text);
    data.AddFormField('gebdatum', gebdatum.text);
    data.AddFormField('Email', Email.text);


    { Call the Post method of TIdHTTP and read the result into TMemo }
    Memo1.Lines.Text := form1.IdHTTP1.Post('http://www.chiller4fun.de/addons/login.php', data);
   finally
    data.Free;

_________________
Wissenschaft schafft Wissenschaft, denn Wissenschaft ist Wissenschaft, die mit Wissen und Schaffen Wissen schafft. (myself)
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 18:56 
ja aber wen ich oben name stehen hab dan muss ich daraus username machen oder?
aber ich hab doch mehrere felder
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mi 17.02.10 19:05 
Mal ehrlich, weißt du, was du da tust, oder hast du dir das Skript nur irgendwo zusammenkopiert?

Um es ganz korrekt zu machen, müsstest du abfragen, ob jeder einzelne Parameter vorhanden ist, und erst dann den MySQL Befehl starten.

_________________
PROGRAMMER: A device for converting coffee into software.
maier1990
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 17.02.10 19:07 
ne ich hab es mir kopiert
da ich wegen einmal kein php lernen will
Zitat:
ob jeder einzelne Parameter vorhanden ist, und erst dann den MySQL Befehl starten.


wie mach ich das?
platzwart
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1054
Erhaltene Danke: 78

Win 7, Ubuntu 9.10
Delphi 2007 Pro, C++, Qt
BeitragVerfasst: Mi 17.02.10 19:18 
Ich möchte dir dringend abraten, das überhaupt zu machen. Wenn du diese einfache Aufgabe nicht hinbekommst, obwohl du fertigen Quelltext und Hinweise zum Abändern hast, dann bist du ein Sicherheitsrisiko für diese Anwendung. Zumal hier Zugangsdaten unverschlüsselt durch die Gegend geschoben werden (und wie ich erschreckend feststellen musste, kostet der Download für dieses "Tool" auch noch auf deiner Website...).

_________________
Wissenschaft schafft Wissenschaft, denn Wissenschaft ist Wissenschaft, die mit Wissen und Schaffen Wissen schafft. (myself)
Dieses Thema ist gesperrt, Du kannst keine Beiträge editieren oder beantworten.

Das Thema wurde von einem Team-Mitglied geschlossen. Wenn du mit der Schließung des Themas nicht einverstanden bist, kontaktiere bitte das Team.