Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Etapy wyswietlania, Pomoc
MateuszS
post
Post #1





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


Witam. Przedstawię mój problem. Otóż mam taki kod

  1. <?
  2. $zapytanie = mysql_query("SELECT * FROM `dane`") or die(mysql_error());
  3. $row = mysql_num_rows($zapytanie);
  4. if($_GET['opcja'] == 'admin' AND $_SESSION['zalogowany']==1)
  5. {
  6.    if($_SESSION['zalogowany'] != 1)
  7.    {
  8.    header("Location: index.php");
  9.    }
  10.  
  11.    echo '<br /><input id="inp_klienci" class="input" name="pokaz" type="button" value="Wyświetl listę klientów">';
  12. ?>
  13. <script>
  14. $(document).ready( function() {
  15.    $("#inp_klienci").click( function() {
  16.    $("#klienci").show("slow"); });
  17.    });
  18. </script>    
  19. <?
  20.        while($wynik = mysql_fetch_assoc($zapytanie))
  21.        {
  22.            echo '<div id="klienci"><table class="tabela"><tr><td>ID</td><td>Imię i Nazwisko</td></tr>
  23.                  <tr><td>'.$wynik['ID'].'</td><td>'.$wynik['Imie'].' '.$wynik['Nazwisko'].'</td>
  24.                  <td><a href="index.php?opcja=admin&user='.$wynik['ID'].'" class="link"><input type="button" value="Pokaż dane" class="input"></a>
  25.                  </td></tr></table></div>';
  26.        }
  27.  
  28.                
  29.    if($_GET['user']==$wynik['ID'] AND $_SESSION['zalogowany']==1)
  30.    {
  31.        $dane_zap = mysql_query("SELECT * FROM `dane` WHERE `ID`='".$_GET['user']."'") or die(mysql_error());
  32.        $dane = mysql_fetch_assoc($dane_zap);
  33.        echo '<table class="tabela">
  34.            <tr>
  35.                <td>Imię:</td>
  36.                <td>'.$dane['Imie'].'</td>
  37.            </tr><tr>
  38.                <td>Nazwisko:</td>
  39.                <td>'.$dane['Nazwisko'].'</td>
  40.            </tr><tr>
  41.                <td>Adres:</td>
  42.                <td>'.$dane['Adres'].'</td>
  43.            </tr><tr>
  44.                <td>Telefon:</td>
  45.                <td>'.$dane['Telefon'].'</td>
  46.            </tr><tr>
  47.                <td>E-mail:</td>
  48.                <td>'.$dane['Email'].'</td>    
  49.            
  50.            </tr>
  51.            </table>
  52.            
  53.            ';
  54.  
  55.        exit;
  56.    }    
  57.    
  58. }


Etapy działania (jak powinno)
1. Klikam na button: Pokaż klientów i pokazuje listę klientów z bazy.
2. Klikam button "Pokaż dane" obok klienta aby pokazało jego detale.
3. Pokazuje się lista z detalami: adres, telefon itd.

Co jest nie tak? Klikam na "Pokaż klientów", ok wyświetla się lista. Po kliknięciu buttona "Pokaż dane" wszystko się zwija i zostaje tylko button "Pokaż klientów".

Proszę o pomoc gdyż strasznie się dziś czuję a muszę to napisać... Pozdrawiam.

Ten post edytował MateuszScirka 27.06.2009, 20:44:42
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Pawel_W
post
Post #2





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

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


poskracaj te ify bo są nielogiczne
1.
  1. <?php
  2. if(isset($_GET['pokaz']) AND $_GET['user']==$wynik['ID'] AND $_SESSION['zalogowany']==1)
  3. ?>

skoro było
  1. <?php
  2. if($_SESSION['zalogowany'] != 1)
  3.   {
  4.   header("Location: index.php");
  5.   }
  6. ?>

to wystarczy samo
  1. <?php
  2. if(isset($_GET['pokaz']) AND $_GET['user']==$wynik['ID'])
  3. ?>

2.
  1. <?php
  2. if($_GET['pokaz']=='lista' AND !empty($_POST['pokaz']) AND isset($_POST['pokaz']))
  3. ?>

jeżeli $_GET['pokaz'] = lista to nie jest ona pusta oraz jest ona zdefioniowana, czyli
  1. <?php
  2. if($_GET['pokaz']=='lista')
  3. ?>

3.
  1. <?php
  2. if(isset($_GET['pokaz']) AND $_GET['user']==$wynik['ID'] AND $_SESSION['zalogowany']==1)
  3. ?>

masz to poza pętlą while(), więc będzie nieco inny efekt niż zapewne zakładałeś (porówna z ostatnim rekordem)

reszta chyba ok
Go to the top of the page
+Quote Post
PanGuzol
post
Post #3





Grupa: Zarejestrowani
Postów: 353
Pomógł: 50
Dołączył: 28.07.2005
Skąd: Łaziska Górne

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


Ponieważ $_GET['user'] masz puste oraz wynik['ID'] po wyjściu z pętli jest puste, dokładniej to obie zmienne nie istnieją
Go to the top of the page
+Quote Post
MateuszS
post
Post #4





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


Paweł_W: Edytowałem post ;] Ale dzięki.

Pan Gozol: Ale prawidłowo przechodzi do strony index.php?opcja=admin&user=1 więc powinien sie wykonac warunek

if(isset($_GET['user']) AND $_GET['user']==$wynik['ID'])



Edit:

Problem rozwiązany:
$_SESSION['id']=$wynik['ID'];

Ale za trud macie po punkcie ;]

Ten post edytował MateuszScirka 27.06.2009, 20:52:57
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 16.10.2025 - 07:28