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

Formularz, nie działający submit

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
483 wizyt
pytanie zadane 10 czerwca 2017 w Nasze projekty przez xxxxxx Nowicjusz (180 p.)

<?php

session_start();

  if (isset($_POST['idksiazki']))
{
     $wszystko_OK=true;
     $idksiazki = $_POST['idksiazki'];

      if (strlen($idksiazki)<3)
		{
			$wszystko_OK=false;
			$_SESSION['e_idksiazki']="ID książki musi posiadać max. 2 znaki!";
		}
     $idczytelnika = $_POST['idczytelnika'];

     if (strlen($idczytelnika)<3)
		{
			$wszystko_OK=false;
			$_SESSION['e_idczytelnika']="ID czytelnika musi posiadać max. 2 znaki!";
		}

     $_SESSION['fr_idksiazki'] = $idksiazki;
     $_SESSION['fr_idczytelnika'] = $idczytelnika;

     require_once "connect.php";
     mysqli_report(MYSQLI_REPORT_STRICT);

     try
     {
      $polaczenie = new mysqli($host, $db_user, $db_password, $db_name);
      if ($polaczenie->connect_errno!=0)
      {
       throw new Exception(mysqli_connect_errno());
      }
      else
      {
        //czy ksiazka jest juz wypożyczona?
        $rezultat = $polaczenie->query("SELECT idksiazki FROM wypozyczenia WHERE idksiazki='$idksiazki'");
        
        if (!$rezultat) throw new Exception($polaczenie->error);

        $wypozyczona = $rezultat->num_rows;
        if($wypozyczona>0)
        {
         $wszystko_OK=false;
         $_SESSION['e_idksiazki']="Przykro nam, ktoś już wypożyczył tą książkę!";
        }


        if ($wszystko_OK==true)
        {
          
          
          if($polaczenie->query("INSERT INTO wypozyczenia VALUES (NULL, '$idczytelnika', '$idksiazki')"))
          {
            $_SESSION['wypozyczono']=true;
            header('Location: dziekujemy.php');
          }
          else
          {
            throw new Exception($polaczenie->error);
      

          }
          
        }

        $polaczenie->close();

      }

     }
     catch(Exception $e)
     {
       echo '<span style="color:red;">Błąd serwera! Przepraszamy za niedogodności i prosimy o rejestrację w innym terminie!</span>';
       echo '<br/> Informacja developerska: '.$e;
     } 
}

?>
<!DOCTYPE HTML>
<html lang="pl">
<head>
<style>
		.error
		{
			color:red;
			margin-top: 10px;
			margin-bottom: 10px;
		}
	</style>




</head>

<body>

<form method="post">

     ID KSIĄŻKI: <br /> <input type="text" value="<?php
     if (isset($_SESSION['fr_idksiazki']))
     {
      echo $_SESSION['fr_idksiazki'];
      unset($_SESSION['fr_idksiazki']);
     }
     ?>" name="idksiazki" /><br />

       <?php
      
       if (isset($_SESSION['e_idksiazki']))
       {
          echo '<div class="error">'.$_SESSION['e_idksiazki'].'</div>';
          unset($_SESSION['e_idksiazki']);

       }
     ?>


     TWÓJ ID: <br/> <input type="text" value="<?php
     if (isset($_SESSION['fr_idczytelnika']))
     {
      echo $_SESSION['fr_idczytelnika'];
      unset($_SESSION['fr_idczytelnika']);
     }
     ?>" name="idczytelnika" /><br />
 </form>
       <?php
      
       if (isset($_SESSION['e_idczytelnika']))
       {
          echo '<div class="error">'.$_SESSION['e_idczytelnika'].'</div>';
          unset($_SESSION['e_idczytelnika']);

       }
     ?>

<br/>

   <input action="" type ="submit" value="Wypożycz" />
 </form>


<br/>

</body>
komentarz 10 czerwca 2017 przez xxxxxx Nowicjusz (180 p.)
pomocy. robie projekt na zaliczenie. Nie mam pojęcia dlaczego to nie działa. Mam formularz rejestracji oparty na tych samych elementach i tam wszystko śmiga. Ktoś ma jakiś pomysł?

1 odpowiedź

+2 głosów
odpowiedź 10 czerwca 2017 przez patryk11441 Obywatel (1,150 p.)

Nie masz submita w formie

 ?>" name="idczytelnika" /><br />
 </form> // -- TU GO ZAMYKASZ 
       <?php
       
       if (isset($_SESSION['e_idczytelnika']))
       {
          echo '<div class="error">'.$_SESSION['e_idczytelnika'].'</div>';
          unset($_SESSION['e_idczytelnika']);
 
       }
     ?>
 
<br/>
 
   <input action="" type ="submit" value="Wypożycz" />
 </form>

 

komentarz 10 czerwca 2017 przez xxxxxx Nowicjusz (180 p.)
edycja 10 czerwca 2017 przez xxxxxx
Faktycznie, przeoczyłam to. Działa jak należy! Dziękuje bardzo!
komentarz 10 czerwca 2017 przez patryk11441 Obywatel (1,150 p.)
<input type ="submit" value="Wypożycz" />

 

komentarz 10 czerwca 2017 przez patryk11441 Obywatel (1,150 p.)
To zapewne zmienna wszystko_ok jest równa false
komentarz 10 czerwca 2017 przez patryk11441 Obywatel (1,150 p.)
if (strlen($idksiazki)>3)
{
	$wszystko_OK=false;
	$_SESSION['e_idksiazki']="ID książki musi posiadać max. 2 znaki!";
}
 if (strlen($idczytelnika)>3)

Znak większości miałeś źle

 

 

komentarz 10 czerwca 2017 przez xxxxxx Nowicjusz (180 p.)
Tak, tak, już znalazłam błąd i wszystko działa. Dziękuje! :)

Podobne pytania

0 głosów
1 odpowiedź 172 wizyt
pytanie zadane 10 czerwca 2017 w Nasze projekty przez xxxxxx Nowicjusz (180 p.)
0 głosów
5 odpowiedzi 2,628 wizyt
pytanie zadane 19 lutego 2017 w PHP przez koczo21 Początkujący (450 p.)
0 głosów
1 odpowiedź 884 wizyt

93,104 zapytań

142,080 odpowiedzi

321,591 komentarzy

62,446 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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...