• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dodawanie z php do mysql

–1 głos
304 wizyt
pytanie zadane 26 września 2016 w SQL, bazy danych przez Krzysztof15 Nowicjusz (200 p.)

Witam, czy może mi ktoś powiedzieć co tutaj nie gra. 

<html lang = "pl" >
  <head>
    <meta charset = "utf-8" />
    <title>Książkorama</title>
  </head>
  <body>
    <h1>Książkorama</h1>
    
    <?php
    
      $isbn = $_POST['isbn'];
      $autor = $_POST['autor'];
      $tytul = $_POST['tytul'];
      $cena = $_POST['cena'];
    
      if(!$isbn || !$autor || !$tytul || !$cena) {
        echo "Nie podano wszystkich poczebnych danych.<br/>"
          ."Wróć do poprzedniej strony i sprubuj ponownie.";
        exit;
      }

      if(!get_magic_quotes_gpc()) {
        $isbn = addslashes($isbn);
        $autor = addslashes($autor);
        $tytul = addslashes($tytul);
        $cena = doubleval($cena);
      }

      @ $db = new mysqli('localhost', 'root', '', 'ksiazki');

      if(mysqli_connect_errno()) {
        echo "Połączenie się z bazą danych nie powiodło się. Sprubuj jeszcze raz później.";
        exit;
      }

      $zapytanie = "insert into ksiazki values (' ".$isbn." ' , ' ".$autor." ' , ' ".$tytul." ' , ' ".$cena." ' )";
      $wynik = $db->query($zapytanie);

      if($wynik) {
        echo $db->affected_rows. "książka zapisana do bazy.";
      }
      else {
        echo "Wystąpił błąd. Książka nie została dodana do bazy.";
      }

      $db->close();
    
    ?>
    
  </body>
</html>

Ps. Pokazuje mi się 

Wystąpił błąd. Książka nie została dodana do bazy.

 

komentarz 26 września 2016 przez efiku Szeryf (75,160 p.)

!get_magic_quotes_gpc

Jej 2008! <3 

Nie wiem skąd się uczysz PHP, ale zmień poradnik ;P
po prostu filter_var zamiast addslashes XD i ta małpa w kodzie. 

2 odpowiedzi

+1 głos
odpowiedź 26 września 2016 przez HaKIM Szeryf (87,590 p.)

Spróbuj zamienić na:

      $zapytanie = "insert into ksiazki values ('$isbn' , '$autor' , '$tytul' , '$cena' )";

Powiedz co zwróciło.

Dodatkowo koniecznie usuń @ przed $db = new mysqli('localhost', 'root', '', 'ksiazki');

Poczytaj o PDO.

Staraj się nie mieszać PHP z HTML; system szablonów.

0 głosów
odpowiedź 26 września 2016 przez Krzysztof15 Nowicjusz (200 p.)
To nie daje efektu

Podobne pytania

–3 głosów
1 odpowiedź 273 wizyt
pytanie zadane 15 października 2016 w PHP przez Krzysztof15 Nowicjusz (200 p.)
0 głosów
1 odpowiedź 426 wizyt
pytanie zadane 9 października 2020 w PHP przez Dariusz Hozer Użytkownik (920 p.)
0 głosów
1 odpowiedź 729 wizyt
pytanie zadane 23 listopada 2018 w PHP przez progNewbie Obywatel (1,130 p.)

93,765 zapytań

142,721 odpowiedzi

323,372 komentarzy

63,359 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...