Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dodawanie userów do bazy, jakiś błąd
Forum PHP.pl > Forum > Przedszkole
blazejwiecha
posiadam dwa pliki:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  5. <title>Untitled Document</title>
  6. </head>
  7.  
  8. <body>
  9.  
  10. <?php
  11. //krudkie nazw zmiennych
  12. $imie=$_POST['imie'];
  13. $nazwisko=$_POST['nazwisko'];
  14. $ulica=$_POST['ulica'];
  15. $nrdomu=$_POST['nrdomu'];
  16. $mail=$_POST['mail'];
  17. $gg=$_POST['gg'];
  18.  
  19. if (!$imie || !$nazwisko || !$ulica || !$nrdomu)
  20. {
  21. echo 'Nie podano wszystkich wymaganych danych';
  22. }
  23.  
  24. {
  25. $imie = addslashes($imie);
  26. $nazwisko = addslashes($nazwisko);
  27. $ulica = addslashes($ulica);
  28. $nrdomu = addslashes($nrdomu);
  29. $mail = addslashes($mail);
  30. $gg = addslashes($mail);
  31. }
  32.  
  33. //laczenie z baza
  34. @ $db = new mysqli('localhost'.'root'.''.'internet');
  35.  
  36. if (mysqli_connet_errno())
  37. {
  38. echo 'Blad przy logowaniu';
  39. }
  40.  
  41. $zapytanie = "insert into klienci values ('".$imie."'. '".$nazwisko."'. '".$ulica."'. '".$nrdomu."')";
  42. $wynik = $db->query($zapytanie);
  43. if ($wynik)
  44. echo $db->affected_rows.' Uzytkownik zapisany do bazy.';
  45.  
  46. ?>
  47. </body>
  48. </html>

oraz:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  4. <title>nowy wpis</title>
  5. </head>
  6.  
  7.  
  8. <h1>Nowy wpis</h1>
  9. <form action="wstawwpis.php" method="post">
  10. <table border="0">
  11. <tr><td>Imie</td><td><input type="text" name="imie" maxlength="50" size="50"></td></tr>
  12. <tr><td>Nazwisko</td><td><input type="text" name="nazwisko" maxlength="50" size="50"></td></tr>
  13. <tr><td>Ulica</td><td><input type="text" name="ulica" maxlength="50" size="50"></td></tr>
  14. <tr><td>Numer domu</td><td><input type="text" name="nrdomu" maxlength="20" size="20"></td></tr>
  15. <tr><td>Mail</td><td><input type="text" name="mail" maxlength="100" size="50"></td></tr>
  16. <tr><td>GaduGadu</td><td><input type="text" name="gg" maxlength="15" size="15"></td></tr>
  17. <tr><td colspan="2"><input type="submit" value="Zapisz"></td></tr>
  18. </form>
  19. </body>
  20. </html>

wszystko jest w bazie danyc o nazwie internet w tabeli klienci
hasło do bazy nie istnieje , uzytkownik to root.
problem w tym ze gdy podam jakies tam przykładowe dane zeby dodał , te dane nie są dodawane sad.gif
Gdzieś w kodzie może tkwić błąd ale gdzie questionmark.gif?
droicyn
sluchaj mi sie wydaje ze blad jest w 20 linii ale nie jestem pewien!
wydaje mi sie ze powinno byc tak
if (!$_POST['imie'] || !$_POST['nazwisko'] || !$_POST['ulica'] || !$_POST['nrdomu'])

mam cos podobnego w systemie newsow i mam zrobione tak jak Ci napisalem i wszystko dziala ok!moze sproboj tak jak napisalem!


mysqli_connet_errno()) <- linia 39 kod php to napewno jest dobrze napisane?
blazejwiecha
no ale powyzej skracałem te zmienne po to by nie pisac tak długich .

niestety ta zmiana dalej nie skutkuje .
droicyn
to mowie sprawdz moze to 39 linijke bo to jakies dziwne szczerze mowiac jest!
blazejwiecha
tam jest literówka ma być (mysqli_connect_errno()) ale to nic nie zmieni, nawet gdy to wstawie w //
Michasko
Cytat
@ $db = new mysqli('localhost'.'root'.''.'internet');


usuń tą małpe z 37. linijki smile.gif możliwe, że występują kłopoty z połączeniem z bazą, a Ty tego nawet nie widzisz winksmiley.jpg
krzysiekk
czesc zmien tak moze pomoze
  1. <?php
  2.  
  3. if (($imie=="") || ($nazwisko=="") || ($ulica=="") || ($nrdomu==""))
  4.  
  5. ?>

  1. <?php
  2.  
  3. @ $db = new mysqli('localhost','root,'','internet');
  4.  
  5. ?>
<-- rozumiem ze to jest zapytanie w php5 questionmark.gifquestionmark.gif
blazejwiecha
tak zapytanie w php5
zmieniłem juz kropki na przecinki w bd
zbaczymy czy cos pomorze.

dodanie =="" powoduje tylko to że już nie działa wcale

nadal siedze w kropce sad.gif
krzysiekk
<?php

@ $db = mysqli_connect('localhost','root,'','internet');

?>
zobacz tak czy pojdzie
pytanko uzywasz ksiazki php i Mysql wydanie 3 smile.gif
blazejwiecha
tak tej ksiazki , wydanie nie wiem jakie bo to ksero bez okładki.
tego sposobu prubowałem i raczej nic nie zmieniło to

po root ma być ' questionmark.gif? bo nie dales ..

zresztą wynikiem tego i tak jest pusta strona , a wpisu do bazy nie ma sad.gif
Guest
zrob tak!
if(isset($_POST['Zapisz']))
{
$send = true;
$db = new mysqli('localhost'.'root'.''.'internet');
if (!$imie || !$nazwisko || !$ulica || !$nrdomu)
{
$error = true;
$error_msg = '<br /><br />Nie wypelniles wszystkich pól!! Zrób to!!!';
}
}
if(!$error)
{
$zapytanie = "insert into klienci values ('".$imie."'. '".$nazwisko."'. '".$ulica."'. '".$nrdomu."')";
}


moze tak to zrob moze bedzie dzialalo
Michasko
Może wypróbuj taki kod:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  5. <title>Untitled Document</title>
  6. </head>
  7.  
  8. <body>
  9.  
  10. <?php
  11. //krótkie nazwy zmiennych
  12. $imie=$_POST['imie'];
  13. $nazwisko=$_POST['nazwisko'];
  14. $ulica=$_POST['ulica'];
  15. $nrdomu=$_POST['nrdomu'];
  16. $mail=$_POST['mail'];
  17. $gg=$_POST['gg'];
  18.  
  19. if ( ($imie == "") || ($nazwisko == "") || ($ulica == "") || ($nrdomu == "") )
  20. {
  21. echo 'Nie podano wszystkich wymaganych danych';
  22. }
  23.  
  24. {
  25. $imie = addslashes($imie);
  26. $nazwisko = addslashes($nazwisko);
  27. $ulica = addslashes($ulica);
  28. $nrdomu = addslashes($nrdomu);
  29. $mail = addslashes($mail);
  30. $gg = addslashes($mail);
  31. }
  32.  
  33. //laczenie z baza
  34. $db = new mysqli(localhost, root, internet);
  35.  
  36. if (mysqli_connect_errno())
  37. {
  38. echo 'Blad przy logowaniu';
  39. }
  40.  
  41. $zapytanie = "INSERT INTO klienci VALUES (".$imie.", ".$nazwisko.", ".$ulica.", ".$nrdomu.")";
  42. $wynik = $db->query($zapytanie);
  43. if ($wynik)
  44. {
  45. echo $db->affected_rows.' Uzytkownik zapisany do bazy.';
  46. }
  47. else
  48. {
  49. echo "Nie udało się dodać użytkownika!";
  50. }
  51. ?>
  52. </body>
  53. </html>
blazejwiecha
jak wywale małpe z łączenia sie z bazą to wywala mi coś takiego(zarówno w moim jak i tym co ty napisałes skrypcie:

Kod
Fatal error: Class 'mysqli_connect' not found in /home/blazejwiecha/public_html/krasnal/www/ucze_sie/internet/wstawwpis.php on line 36


ok , juz sie z tym poradziłem , dodałem pakiet php_mysqli i błędu nie ma, niestety wpisu nadal nie dodaje.

zmienilem troche logowanie do bazy , bo rozumial to tak jakby było hasło

ale niestety nie dodaje usera, przynajmniej juz pisze że nie dodał, wcześniej nic nie było smile.gif

Przegrzebałem cały skrypt. wygląda tak:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  5. <title>Untitled Document</title>
  6. </head>
  7.  
  8. <body>
  9.  
  10. <?php
  11. //krudkie nazw zmiennych
  12. $imie=$_POST['imie'];
  13. $nazwisko=$_POST['nazwisko'];
  14. $ulica=$_POST['ulica'];
  15. $nrdomu=$_POST['nrdomu'];
  16. $mail=$_POST['mail'];
  17. $gg=$_POST['gg'];
  18.  
  19. if (!$imie || !$nazwisko || !$ulica || !$nrdomu)
  20. {
  21. echo 'Nie podano wszystkich wymaganych danych';
  22. }
  23.  
  24. {
  25. $imie = addslashes($imie);
  26. $nazwisko = addslashes($nazwisko);
  27. $ulica = addslashes($ulica);
  28. $nrdomu = addslashes($nrdomu);
  29. $mail = addslashes($mail);
  30. $gg = addslashes($gg);
  31. }
  32.  
  33. //laczenie z baza
  34. @$db = new mysqli('localhost','root','','internet');
  35.  
  36. if (mysqli_connect_errno())
  37. {
  38. echo 'Blad przy logowaniu';
  39. }
  40.  
  41. $zapytanie = "insert into klienci values ('".$imie."', '".$nazwisko."', '".$ulica."', '".$nrdomu."', '".$mail."', '".$gg."')";
  42. $wynik = $db->query($zapytanie);
  43. echo $wynik;
  44. if ($wynik)
  45. {
  46. echo $db->affected_rows.' Uzytkownik zapisany do bazy.';
  47. }
  48. else
  49. {
  50. echo "Nie udało się dodać użytkownika!";
  51. }
  52. ?>
  53. </body>
  54. </html>
ale niestety dalej nie dodaje usera do bazy.



kolejne poprawki i juz działa dzieki pomocy plisken
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  5. <title>Untitled Document</title>
  6. </head>
  7.  
  8. <body>
  9.  
  10. <?php
  11. //krudkie nazw zmiennych
  12. $imie=$_POST['imie'];
  13. $nazwisko=$_POST['nazwisko'];
  14. $ulica=$_POST['ulica'];
  15. $nrdomu=$_POST['nrdomu'];
  16. $mail=$_POST['mail'];
  17. $gg=$_POST['gg'];
  18.  
  19. if (!$imie || !$nazwisko || !$ulica || !$nrdomu)
  20. {
  21. echo 'Nie podano wszystkich wymaganych danych';
  22. }
  23.  
  24. {
  25. $imie = addslashes($imie);
  26. $nazwisko = addslashes($nazwisko);
  27. $ulica = addslashes($ulica);
  28. $nrdomu = addslashes($nrdomu);
  29. $mail = addslashes($mail);
  30. $gg = addslashes($gg);
  31. }
  32.  
  33. //laczenie z baza
  34. @$db = new mysqli('localhost','root','','internet');
  35.  
  36. if (mysqli_connect_errno())
  37. {
  38. echo 'Blad przy logowaniu';
  39. }
  40.  
  41. $zapytanie = ("insert into klienci (imie, nazwisko, ulica, nrdomu, mail, gg) values ('".$imie."', '".$nazwisko."', '".$ulica."', '".$nrdomu."', '".$mail."', '".$gg."');");
  42. $wynik = $db->query($zapytanie);
  43. echo $wynik;
  44. if ($wynik)
  45. {
  46. echo $db->affected_rows.' Uzytkownik zapisany do bazy.';
  47. }
  48. else
  49. {
  50. echo "Nie udało się dodać użytkownika!";
  51. }
  52. ?>
  53. </body>
  54. </html>



może komuś się też przyda tongue.gif)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.