"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Solved: [php] Formular in SQL datenbank eintragen

x3 08.10.2003 - 09:10 724 12
Posts

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
Also ihr kennt das sicher alle!
und es ist sicher net schwer,
aber i steh grad total auf der leitung ;)
also es soll ein Formular ausgefüllt werden!
Wenn man dann auf absenden drückt sollen alle daten in eine SQL datenbank eingetragen werden!
Also wie:
Nick
Name
ICQ
E-Mail
etc.

ihr wisst sicher was ich meine, nur i checks einfach grad net ;)

tia
Bearbeitet von x3 am 09.10.2003, 08:10

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
was davon verstehst du nicht?

wie man ein formular erstellt? wie man einen dbeintrag macht?

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
wie man den dbeintrag dann macht
also die datenübermittelt

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
nach dem du die mysql connection aufgebaut hast brauchst nur mehr folgendes:

mysql_query("INSERT INTO tblName VALUES(bla,bla,bla)",$hConnection)

es gibt noch mehrere varianten bei denen du nur bestimmte columns füllst. guter link is übrigens: http://www.w3schools.com/sql/sql_insert.asp

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
aa danke
da hab ich aber noch ne frage, denn das war schon wieder fast 1 jahr her als ich das gelernt haben ;)
wie mach ich nun die spezielle überprüfung ob eine korrekte mail adresse eingegeben wurde?

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
durchsuch den string nach "@" und "." mit strpos und überprüf ob deren positionen korrekt sind (zB "." nicht am ende vom string usw.). uvm..

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
emn und in die klammer der values gehören dann die ganzen textfield namen eingetragen?
zb das textfield für nickname heist nick, da trag ich dann in value dann nick ein?

Red

OC Addicted
Avatar
Registered: Jan 2002
Location: vienna
Posts: 2170
http://www.php.net => Man.
Ausserdem gibts 100derte Anmelde Scripts und Co
wo du dir das ganz nur einmal anschauen musst und dann kannst es!


Imho recht simple und geht bestimmt etwas schneller

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
einfach der reihe nach alle werte eintragen. ansonsten musst du die columns in den query miteinbeziehen. wenn du als primary key ein autoincrement (also eine fortlaufende nummer) hast dann nimm als value einfach ''

beispiel:

table: pk, column1, column2
SQL: "INSERT INTO tblName VALUES('','column1','column2')"

hth
mat

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
hmm ja genau so hab ichs gemacht
nur jetzt bin ich nochmal lästig
wenn ich nun standard werte habe,
wie zb nein für nicht eingezahlt, oder
<a href='mailto:mail'>Mail</a>
wie soll ich dann das mail ersätzen das dann gleich auto die eingetragene mail hinein kommt?

edit:
ich habs zur zeit so
Code:
$sql = 'INSERT INTO `anmeldung` (`$$`, `Clan`, `Nickname`, `Vorname`, `PLZ`, `Ort`, `E-Mail`, `ICQ`) VALUES (\'nein\', \'clan\', \'nick\', \'vorname\', \'plz\', \'ort\', '<a href='mailto:\'mail\''>Mail</a>\', \'icq\');';

sorry aber die schrägstriche werden weggestrichen

edit2:
Code:
 $sql = " INSERT INTO anmeldung VALUES ('nein', '$clan', '$nick', '$vorname', '$plz', '$ort', '$mail', '$icq') "; 
so nun fehlt nur mehr das mit dem automatischen mailto
wie bring ich das noch rein
denn so funkts nun
Bearbeitet von x3 am 08.10.2003, 11:10

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25423
füg das mailto erst hinzu wenn du die daten benutzt

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
Zitat von mat
füg das mailto erst hinzu wenn du die daten benutzt
geht nicht,
da ich einfach die ganze tabelle auslese und dann nacheinander ausgebe
habs aber nun schon gelöst

thx for all help

btw die lösung:
Code:
$sql = " INSERT INTO anmeldung VALUES ('nein', '$clan', '$nick', '$vorname', '$plz', '$ort', '<a href=\'mailto:$mail\'>Mail</a>', '$icq') ";

a das gibts ja net, der tut immer die schrägstriche weg :(
vor 'mailto und vor '>Mail gehört ein schrägstrich

atrox

in fairy dust... I trust!
Avatar
Registered: Sep 2002
Location: HTTP/1.1 404
Posts: 2782
a) warum zum geier werden HTML-<A-HREF-mailto's in die datenbank eingefügt... das attribut heißt "email", nicht "html-code-for-email".

b) das query bricht in dem moment zusammen, in dem ein user versucht einfache anführungszeichen in seinen strings zu verwenden. die db-apis in php bieten alle eigene escape/quoting-funktionen.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz