Textfeld-Inhalt geht in falsche Spalte, verschiebt alles

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
gabriela
Mitglied
Beiträge: 27
Registriert: 02.04.2004 13:12

Textfeld-Inhalt geht in falsche Spalte, verschiebt alles

Beitrag von gabriela »

Hallo,

ich habe ein Problem mit einem text- bzw. textarea-Formularfeld.
Wenn man "Text" eingibt, bekomme ich die Fehlermeldung, dass die Spalte "Text" in der sql-DB fehlt. Irgendwie wird der eingegebene Text also anscheinend als Name der Variable missinterpretiert.
Hat jemand eine Idee, woran das liegen könnte?

Es grüßt
Gabriela


In der DB ist das textarea-Feld so definiert:

Code: Alles auswählen

ALTER TABLE `phpbb_users` CHANGE `user_item15` `user_item15` TEXT DEFAULT NULL
Hier die Fehlermeldung:

Code: Alles auswählen

Could not insert data into users table

DEBUG MODE

SQL Error : 1054 Unknown column 'text' in 'field list'

INSERT INTO phpbb_users (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_nummer, user_item2, user_item3, user_item4, user_item5, user_item6, user_item7, user_item8, user_item9, user_item10, user_item11, user_item12, user_item13, user_item14, user_item15, user_level, user_allow_pm, user_active, user_actkey) VALUES (22, 'fernandes', 1086277529, 'b1e39f1f87be88ced93a617e3578f6bc', 'fernandes@gmfb.de', '', '', '', '', 'bbb', '', '', '', '', 0, 0, '', '', '', 0, 1, 1, 1, 1, 0, 1, 1, 1, 'd.m.Y, H:i', 'german', 1, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 14, 0, text, 0, 1, 0, 'a3f4b4')

Line : 550
File : /srv/www/htdocs/web154/html/phpbb2/includes/usercp_register.php

Code: Alles auswählen

Hier meine profile_add_body.tpl:
<tr>
<td class="row1"><span class="gen">{L_ITEM15} </span></td>
<td class="row2">
<input type="text" class= "post" style="width: 100px" name="item15" size="35" value="{ITEM15}" />
</td>
</tr>
Zuletzt geändert von gabriela am 09.06.2004 00:13, insgesamt 3-mal geändert.
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Strings gehören auch in Anführungszeichen :-D

Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
gabriela
Mitglied
Beiträge: 27
Registriert: 02.04.2004 13:12

Beitrag von gabriela »

Hallo Philipp,
danke für deine Antwort.
Ich verstehe sie nur leider nicht.
Vielleicht eine blöde Frage, aber wo genau muss ich Anführungszeichen setzen? :oops:
Benutzeravatar
QCO
Mitglied
Beiträge: 708
Registriert: 15.03.2003 12:30
Wohnort: Leipzig

Beitrag von QCO »

INSERT INTO phpbb_users (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_nummer, user_item2, user_item3, user_item4, user_item5, user_item6, user_item7, user_item8, user_item9, user_item10, user_item11, user_item12, user_item13, user_item14, user_item15, user_level, user_allow_pm, user_active, user_actkey) VALUES (22, 'fernandes', 1086277529, 'b1e39f1f87be88ced93a617e3578f6bc', 'fernandes@gmfb.de', '', '', '', '', 'bbb', '', '', '', '', 0, 0, '', '', '', 0, 1, 1, 1, 1, 0, 1, 1, 1, 'd.m.Y, H:i', 'german', 1, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 14, 0, text, 0, 1, 0, 'a3f4b4')
Um den rot markierten Text müssen Anführungsstriche drum...
Schnelle direkte Hilfe? Modeinbau? Umfassender, persönlicher Support? Ein individuelles Design/Template?
Ich bin käuflich und löse zu kleinen Preisen Deine Probleme. Anfragen bitte per PN oder Mail.
Jensemann
Ehemaliges Teammitglied
Beiträge: 2549
Registriert: 25.02.2002 01:00

Beitrag von Jensemann »

ausserdem solltest du prüfen ob der text vorher mit addslashes() behandelt wird, sonst SQL Injection.
gabriela
Mitglied
Beiträge: 27
Registriert: 02.04.2004 13:12

SQL Error : 1064 You have an error in your SQL syntax

Beitrag von gabriela »

Danke, das mit den Anführungsstrichen hab ich hinbekommen. Kurzzeitig funktionierte das Formular mit Radiobuttons auch.

Jetzt, nachdem ich ein Textfeld hinzugefügt habe, das aber in der DB die Spalten verschoben hat und das ich daraufhin wieder entfernt habe, gehts nicht mehr, aaargh :-(.

Hab jetzt alle Formularfelder (auch in der DB) entfernt und bekomme trotzdem diese Fehlermeldung:

Code: Alles auswählen

Could not insert data into users table

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax near ''', '', '', 0, 1, 1, 1, 1, 0, 1, 1, 1, 'd.m.Y, H:i', 'german', 1, 0, 1, 0, '2279' at line 2

INSERT INTO phpbb_users (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_level, user_allow_pm, user_active, user_actkey) VALUES (22, 'fernandes', 1086691581, 'b1e39f1f87be88ced93a617e3578f6bc', 'fernandes@gmfb.de', '', '', '', '', '', '', '', '', 0, 0 '', '', '', 0, 1, 1, 1, 1, 0, 1, 1, 1, 'd.m.Y, H:i', 'german', 1, 0, 1, 0, '227995')

Line : 538
File : /srv/www/htdocs/web154/html/phpbb2/includes/usercp_register.php 
Hat jemand eine Idee und kann mir helfen?

verzweifelter Gruß
Gabriela
Benutzeravatar
QCO
Mitglied
Beiträge: 708
Registriert: 15.03.2003 12:30
Wohnort: Leipzig

Beitrag von QCO »

INSERT INTO phpbb_users (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_level, user_allow_pm, user_active, user_actkey) VALUES (22, 'fernandes', 1086691581, 'b1e39f1f87be88ced93a617e3578f6bc', 'fernandes@gmfb.de', '', '', '', '', '', '', '', '', 0, 0, '', '', '', 0, 1, 1, 1, 1, 0, 1, 1, 1, 'd.m.Y, H:i', 'german', 1, 0, 1, 0, '227995')
Schnelle direkte Hilfe? Modeinbau? Umfassender, persönlicher Support? Ein individuelles Design/Template?
Ich bin käuflich und löse zu kleinen Preisen Deine Probleme. Anfragen bitte per PN oder Mail.
gabriela
Mitglied
Beiträge: 27
Registriert: 02.04.2004 13:12

Beitrag von gabriela »

Vielen Dank fürs checken, jetzt gehts!!! :)
Ich saß heute schon 4 Stunden an dem Problem und alles wegen einem Komma...
Viele Grüße von Berlin nach Meißen
Gabriela
gabriela
Mitglied
Beiträge: 27
Registriert: 02.04.2004 13:12

Beitrag von gabriela »

So langsam komme ich dem Ziel näher, aber es gibt doch noch ein Problem, das ich nicht lösen kann:
Wenn ich ein Textfeld in meinen Fragebogen einbaue, werden die Daten in der sql-DB nicht in die richtigen Tabellenspalten geschrieben (vorher schon).
Der Inhalt meines Textfeldes wird in die user_sig-Spalte geschrieben und die Radiobutton-Werte rücken eins auf, so dass der value des letzten Radiobuttons in die Textfeld-Spalte geschrieben wird.
Irgendwoher kommt eine Null, die alles verschiebt, glaube ich, denn die war vorher nicht da.
Hm, hat vielleicht jemand eine Idee wo ich nach dem Fehler suchen kann? Auf jeden Fall in der usercp_register.php denke ich, aber wo?
An der sql-Datenbank liegt es glaube ich nicht. Das Textfeld ist definiert als user_item13 varchar(14) not_null.

Gruß
Gabriela
Benutzeravatar
QCO
Mitglied
Beiträge: 708
Registriert: 15.03.2003 12:30
Wohnort: Leipzig

Beitrag von QCO »

Der Fehler liegt mit großer Wahrscheinlichkeit hier

Code: Alles auswählen

INSERT INTO phpbb_users (user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_level, user_allow_pm, user_active, user_actkey) VALUES (22, 'fernandes', 1086691581, 'b1e39f1f87be88ced93a617e3578f6bc', 'fernandes@gmfb.de', '', '', '', '', '', '', '', '', 0, 0, '', '', '', 0, 1, 1, 1, 1, 0, 1, 1, 1, 'd.m.Y, H:i', 'german', 1, 0, 1, 0, '227995') 
Nachdem wir ja jetzt schon wissen, dass du damit Probleme hattest...
Schau dir mal genauer den Aufbau dieses Querys an...
INSERT INTO tabelle (feldname1, feldname2, feldname3...) VALUES (wert1, wert2, wert3...)
Bei dir ist höchstwahrscheinlich irgendwas bei der Reihenfolge von den Werten vertauscht, verrutscht oder so...
Schnelle direkte Hilfe? Modeinbau? Umfassender, persönlicher Support? Ein individuelles Design/Template?
Ich bin käuflich und löse zu kleinen Preisen Deine Probleme. Anfragen bitte per PN oder Mail.
Antworten

Zurück zu „Coding & Technik“