• 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

VPS Starter Arubacloud
0 głosów
481 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ź 171 wizyt
pytanie zadane 10 czerwca 2017 w Nasze projekty przez xxxxxx Nowicjusz (180 p.)
0 głosów
5 odpowiedzi 2,622 wizyt
pytanie zadane 19 lutego 2017 w PHP przez koczo21 Początkujący (450 p.)
0 głosów
1 odpowiedź 875 wizyt

93,079 zapytań

142,043 odpowiedzi

321,449 komentarzy

62,424 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 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...