Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyświetlanie alertów- zasięg zmiennych w PHP
Forum PHP.pl > Forum > PHP
inin
Witam serdecznie,

Proszę o pomoc w wyświetleniu alertów przy pomocy frameworku Bootstrap. Główny zarys:

- index.php <- tutaj w górnym pasku dostępne są 3 formularze które podmieniam za pomocą JS
  1. document.getElementById("dodawanieOcen").addEventListener("click", function() {
  2. document.getElementById("content").innerHTML = "<form action='dodawanieOcen.php' method='POST'><label>Imie</label>
  3. ... dalsza część kodu
  4.  
  5.  


Oraz część odpowiedzialna za wyświetlenie tego alertu:

  1. <?php
  2.  
  3. if(!empty($error_message)){
  4. ?>
  5. <div class="alert alert-danger alert-dismissible" >
  6. <button type="button" class="close" data-dismiss="alert">&times;</button>
  7. <strong>Błąd!</strong> <?= $error_message ?>
  8. </div>
  9.  
  10.  
  11. <?php
  12. }
  13. ?>
  14.  
  15. <?php
  16.  
  17. if(!empty($success_message)){
  18. ?>
  19. <div class="alert alert-success alert-dismissible">
  20. <button type="button" class="close" data-dismiss="alert">&times;</button>
  21. <strong>Sukces!</strong>
  22. </div>
  23.  
  24.  
  25. <?php
  26. }
  27. ?>


- pliki dodawanieOcen.php w których znajduje się kod do wstawienia oceny do bazy MySQL i kod odpowiedzialny za tworzenie "wiadomości" - mojego alertu
  1. if (mysqli_query($conn, $sql_l)) {
  2. echo $success_message = "Nowy użytkownik został pomyślnie dodany. ";
  3.  
  4.  
  5. } else {
  6. echo $error_message = "Wystąpił błąd: " . mysqli_error($conn);
  7. }
  8.  
  9. }


Na ten moment mam tylko ten działający alert na 1 stronie aby sprawdzić jak to działa, kod PHP odpowiedzialny za wstawienie użytkownika i instrukcja IF z echo $error_message znajduje się na początku strony więc domyślam się że zostaje z problemem zasięgu zmiennych.

W jaki sposób mogę rozwiązać ten problem? Może jakiś prosty AJAX ?
dublinka
Mozna to rozwiazac za pomoca sesji.

W momencie dodania czegostam inicjujesz sesje
  1. $_SESSION['alert'] = '1';
  2. header('location:index.php');

I teraz wystarczy przekierowac chocby na strone glowna gdzie podajesz warunek
  1. if( (isset($_SESSION['alert'] )) && $_SESSION['alert'] == '1')
  2. {
  3. Tutaj alert
  4. unset($_SESSION['alert'] );
  5. $_SESSION = array();
  6. }
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.