• 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

0 głosów
85 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ź 49 wizyt
pytanie zadane 10 czerwca 2017 w Nasze projekty przez xxxxxx Nowicjusz (180 p.)
0 głosów
5 odpowiedzi 1,728 wizyt
pytanie zadane 19 lutego 2017 w PHP, Symfony, Zend przez koczo21 Początkujący (420 p.)
0 głosów
1 odpowiedź 95 wizyt
Porady nie od parady
Publikując kody źródłowe korzystaj ze specjalnego bloczku koloryzującego składnię (przycisk z napisem code w edytorze). Nie zapomnij o ustawieniu odpowiedniego języka z rozwijanego menu oraz czytelnym formatowaniu kodu.Przycisk code

63,199 zapytań

109,435 odpowiedzi

228,618 komentarzy

42,944 pasjonatów

Przeglądających: 76
Pasjonatów: 8 Gości: 68

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...