Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyświetlanie alertów- zasięg zmiennych w PHP
inin
post 30.12.2020, 09:55:43
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 10.12.2020

Ostrzeżenie: (0%)
-----


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 ?
Go to the top of the page
+Quote Post
dublinka
post 30.12.2020, 10:54:37
Post #2





Grupa: Zarejestrowani
Postów: 594
Pomógł: 66
Dołączył: 22.02.2008
Skąd: Dublin

Ostrzeżenie: (0%)
-----


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. }


Ten post edytował dublinka 30.12.2020, 11:04:29


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.06.2025 - 17:08