![]() |
Proszę o pomoc .... nie daje rady - Wersja do druku +- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl) +-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www) +--- Dział: Początkujący webmaster (https://www.webmastertalk.pl/forum-poczatkujacy-webmaster) +--- Wątek: Proszę o pomoc .... nie daje rady (/thread-prosze-o-pomoc-nie-daje-rady) |
Proszę o pomoc .... nie daje rady - comasystem - 01-10-2011 Robiłem formularz który działał ale nastepował problem z kodowaniem polskich znaków. Testowałem różne kodowania i nagle formularz przestał działac nie wiem co sie dzieje <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8895-2" /> <meta name="Descryption" content=" Strona testowa arkuszy stylw" /> <meta name="keywords" content="Arkusze stylw" /> <meta name="Author" content="Piotr Zdanowicz"/> <meta name="Generator" content="Dreamweaver"/> <title>Po wysaniu Imienia i Nazwiska</title> <style type="text/css"> body { background-color: #FFFFCC; } </style> </head> <body> <h2>Dziekujemy za przesanie danych</h2> <?php $firstname = $_POST['first_name']; $lastname = $_POST['last_name']; $email = $_POST['email']; $telefon = $_POST['telefon']; $wiek = $_POST['wiek']; $dbc = mysql_connect('localhost', 'root', '','spis_ludzi') or die('Error connecting to MySQL server.'); $query = "INSERT INTO ludzie ('imie', 'nazwisko', 'email', 'telefon', 'wiek' )". "VALUES ('$first_name','$last_name','$email', '$telefon', '$wiek')"; $result = mysql_query($query) or die('Error querying database.'); mysql_close($dbc); echo 'Dziki za wypenienie formularza.<br />'; echo 'Teraz moesz juz zobaczy czy wpis zosta dodany i czy figurujesz na licie.<br />'; ?> <p align="center"><a href="Ludzie.html">Nacinij aby przejc do przegldania spisu w Bazie Danych</a></p> <p align="center"><a href="kwestionariusz osobowy.html">Dodaj kolejny wpis do Bazy danych</a></p> </body> </html> a formularz wygląda tak <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8895-2" /> <meta name="Descryption" content=" Strona testowa arkuszy stylw" /> <meta name="keywords" content="Arkusze stylw" /> <meta name="Author" content="Piotr Zdanowicz"/> <meta name="Generator" content="Dreamweaver"/> <title>Kwestionariusz osobowy</title> <link rel="stylesheet" href="glowny.css" type="text/css" /> </head> <body> <h2>Kwestionariusz Osobowy</h2> <form method="post" action="wyslij.php"> <label for="firstname">Imie:</label> <input type="text" id="firstname" name="firstname" /><br /> <label for="lastname">Nazwisko:</label> <input type="text" id="lastname" name="lastname" /><br /> <label for="email">Twoj adres e-mail ?</label> <input type="text" id="email" name="email" /><br /> <label for="telefon">Numer telefonu ?</label> <input type="text" id="telefon" name="telefon"/><br/> <label for="wiek">Ile masz lat ?</label> <input type="wiek" id="wiek" name="wiek"/><br/> <input type="submit" value="Wyslij" name="submit" /> </form> <p align="center"><a href="Ludzie.html">Przejd do przeszukiwania i wywietlania Bazy danych</a></p> </body> </html> błąd zgłaszany to : undefined index firstname in c:\xammp\piotr\....... line 23 a jezeli nie pokazuje się ten błąd to i tak nie zapisuje mi rekordu do bazy Bardzo proszę o pomoc używam Xampp 1.7.3 RE: Proszę o pomoc .... nie daje rady - artux - 01-10-2011 Zmień "charset=iso-8895-2" na "charset=iso-8859-2" RE: Proszę o pomoc .... nie daje rady - comasystem - 01-10-2011 (01-10-2011, 14:40)artux napisał(a): Zmień "charset=iso-8895-2" na "charset=iso-8859-2" Nie to nie pomaga. Co ciekawe dane moge wprowadzać za pomocą np EMS SQL editor i jestok ale w shellu juz nie mogę wpisując np insert into ludzie ...... zgłasza mi bład ze nie istnieje tabela spis_ludzi.ludzie ???? nie mam siły ![]() RE: Proszę o pomoc .... nie daje rady - Flake - 02-10-2011 Prawdopodobnie próbujesz pisa zmienną o wartoci null do bazy danych a prawdopodobnie masz ją ustawioną jako not null Patrz tutaj: Kod: $firstname = $_POST['first_name']; Do zmiennych firstname oraz lastname próbujesz przypisać dane z tablicy POST o nazwach first_name oraz last_name A patrz tu: Kod: <form method="post" action="wyslij.php"> Formularzem tworzysz zmienne o nazwie $_POST['firstname'] oraz $_POST['lastname'] ale próbujesz później używać $_POST['first_name'] oraz $_POST['last_name'] A na końcu w zapytaniu SQL próbujesz użyć zmiennych których nie deklarowałeś nigdzie w kodzie czyli $first_name i $last_name - takie wcześniej nie definiowane zmienne mają wartość NULL Daj znać na czym polega problem z kodowaniem znaków (czy w ogóle na stronie? Czy tylko wpisy do bazy danych są skopane?) Btw polecam przejść z iso-8... na utf-8 RE: Proszę o pomoc .... nie daje rady - comasystem - 04-10-2011 Tak dzieki miałeś racje przesłałem ten skrypt po jego kolejnej modyfikacji ale deklarowanie zmiennych jest prawidłowe i dalej nie działa co ciekawsze jeśli stosuje if ( isset($_POST["imie"]) ) $imie = trim($_POST["imie"]); i koryguje zmienne formularza wszystko działa jak należy to kosmos |