ďťż

baza hotelowa puste pola w bazie

       

Podstrony


telcocafe

hello :)
mam problemik, probuje stworzyc skrypt dla osoby tora bedzie do bazy dodawac nowego klienta. Baza sklada sie z tabeli osoba, pokoje, itd... w tabeli osoba sa pola typu , imie, nazwisko, firma_id, kod_pocztowy, miejscowosc, ulica. itd...
problem jest tego typu, iz udalo sie doprowadzic do tego, by skrypt dodawal imie i nazwisko do bazy ;) (dla mnie to bylo juz sporo)
{ $query="INSERT INTO osoba (imie, nazwisko) VALUES ('$_POST[imie]','$_POST[nazwisko]')"; $result = mysql_query($query) or die ("problem inserting new product into database"); }?>

taki byl kod, ktory to wykonywal dodalalm wiec
kod_pocztowy, ulice itd...

{ $query="INSERT INTO osoba (imie, nazwisko, kod_pocztowy) VALUES ('$_POST[imie]','$_POST[nazwisko]','$_POST[kod_pocztowy] ')"; $result = mysql_query($query) or die ("problem inserting new product into database"); }?>

ale kod dodaje do bazy puste pola, bez wzgledu na to, czy w ogole je wypelniono :mad: nawet nie sa NULL :unsure:
sprawdzalam juz, czy sa literowki.. nic nie znalazlam :(
pomocy bo trace nadzieje (ze mi sie uda;)) i cierpliwosc... :(

POMOCY!! :pomocy:
Użytkownik ArteK edytował ten post 05 wrzesień 2005, 11:16


sprubój tak :

{ $query="INSERT INTO osoba (imie, nazwisko, kod_pocztowy) VALUES (\"$imie\", \"$nazwisko\",\"$kod_pocztowy\")"; $result = mysql_query($query) or die ("cos nie trybi"); }
Użytkownik ArteK edytował ten post 05 wrzesień 2005, 11:16
dzieki, ale udalo sie problem rozwiazac.
w formularzu mam dane odnosnie nowej osoby i nowej firmy. pola te sa ukryte w formularzy, klikajac na radio odrywaja sie, by moc je uzupelnic ;) problem tkwil w ich nazwach :) w polu dotyczacym osoby i firmy byly te same nazwy po textowych "miejscowosc" kod_pocztowy" ... i to wlasnie te puse dane do bazy trafily ;) wystarczylo tylko nazwy zmienic ;)
dziekuje....
pewnie sie jeszcze odezwe ;)

bosh przepadnij zmaro nieczysta !!! toż to jest bardziej podatne na wszystkie injectiony niż nie wiem co :| brrr :D podczas tworzenia skryptów jest jedna zasada nie można ufać userowi, czyli dodaj jakieś sprawdzanie i filtorowanie danych np addslashes(), htmlspecialchars() czy strip_tags()



Poza tym używaj np. phpmyadmin i wpisuj mysql_query("zapytanie") or die (mysql_error()); To Ci pokaże jakie błędy są. Co do tej wiary w userów, tu racja. Lepszym pomysłem byłaby aktywacja konta, np. używając funkcji mail (), w treści emaila byłby link, po naciśnięciu którym konto by się aktywowało (czyt. dodanoby usera do bazy danych).

Do tego skrypt będzie szybszy jak nie będziesz używał:

$zapytanie="zapytanie"; $rezultat=mysql_query($zapytanie);

tylko:

mysql_query ("zapytanie") or die (mysql_error());
Użytkownik Norr edytował ten post 05 wrzesień 2005, 19:37

Poza tym używaj np. phpmyadmin i wpisuj mysql_query("zapytanie") or die (mysql_error()); To Ci pokaże jakie błędy są. Co do tej wiary w userów, tu racja. Lepszym pomysłem byłaby aktywacja konta, np. używając funkcji mail (), w treści emaila byłby link, po naciśnięciu którym konto by się aktywowało (czyt. dodanoby usera do bazy danych).

:D no ale jest to jakiś sposób zabezpieczenia :D, no ale masz rację, wpisy trzeba sprawdzić, czy jakiegoś kodu nie ma :D.
Użytkownik Norr edytował ten post 05 wrzesień 2005, 19:48
czemu odrazu "zmaro nieczysta", o ile dobrze zrozumialam z tym zabezpieczeniem to mam je w pliku ktory laczy sie z baza
function escape_data ($data) {
global $dbc;
if (ini_get('magic_quotes_gpc')) {
$data = stripslashes($data);
}
return mysql_real_escape_string (trim ($data), $dbc);
no chyba,ze sie nie zrozumielismy :blink:
a co do sprawdzenia danych w samych polach formularza... na to tez czas przyjdzie, jak mi zacznie dzialac dodawania nowych osob, biorac pod uwage kilka warunkow :)
PS. i prosze o wyrozumialość dla początkujących ;)
pozdrawiam

[quote name='Norr' date='05.09.2005 21:35']
Poza tym używaj np. phpmyadmin i wpisuj mysql_query("zapytanie") or die (mysql_error()); To Ci pokaże jakie błędy są.

używam phpMyAdmin :> ale głównie celem sprawdzenia tego, co do bazy się dodało
co do jego pomocy w pokazaniu błędów, to samo otrzmymam poprzez
$wynik = mysql_query($pytanie) or die ("problem z dodaniem nowej osoby". mysql_error());

:D :D

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.