Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]Zapętlanie się zapytania
ArekJ
post
Post #1





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

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


Witam. Mam problem z zapytaniem. Otóż napisałem kod, który odpowiada za losowanie, a potem wyświetlanie oraz wykonywanie skryptu. Wygląda to tak:
  1. <?php
  2. include 'includes/config.php';
  3.  
  4. /********************************************************************************
  5. **************************************
  6. Tu sš zmienne, które przechowujš teksty w piwnicy***********************************************************************
  7. ********************************************************************************
  8. **************************************/
  9.  
  10. $a1 = 'Wylosowałeś opcję pierwszą. Doda Ci ona jeden knut<br /><a href="gra.php?act=lokacja&miejsce=piwnica&akcja=idzie" />Idz dalej</a>';
  11. $a2 = 'Wylosowałeś opcję drugą. Doda Ci ona dwa knuty<br /><a href="gra.php?act=lokacja&miejsce=piwnica&akcja=idzie" />Idz dalej</a>';
  12.  
  13. /********************************************************************************
  14. **************************************
  15. Tu są zmienne, które przechowują zapytania w piwnicy********************************************************************
  16. ********************************************************************************
  17. **************************************/
  18.  
  19. $b1 = 'UPDATE uzytkownicy SET zloto = zloto + 1, energia = energia - 5 WHERE id = '.$_SESSION['id'].'';
  20. $b2 = 'UPDATE uzytkownicy SET zloto = zloto + 2, energia = energia - 5 WHERE id = '.$_SESSION['id'].'';
  21.  
  22. /********************************************************************************
  23. **************************************
  24. Cały kod piwnicy*************************************************************************
  25. ******************************
  26. ********************************************************************************
  27. **************************************/
  28. if (isset($_GET['akcja']) && $_GET['akcja'] == 'idzie')  
  29. {
  30.    if ($players -> energia < 5)  
  31.    {
  32.        $tekst = 'Niestety, ale nie możesz wykonywać tej czynności ponieważ Twoja postać nie posiada wystarczającej ilości energii';
  33.    }
  34.    else
  35.    if ($players -> zycie == 0)  
  36.    {
  37.        $tekst = 'Niestety, ale nie możesz wykonywać tej czynności ponieważ Twoja postać jest martwa';
  38.    }
  39.    else
  40.    {
  41.        $rand = rand(1,2); //losowanie liczby z podanego zakresu
  42.        $tekst = ${'a'.$rand}; //wyświetlanie wylosowanego tekstu
  43.        $sql = ${'b'.$rand};
  44.        mysql_query($sql);
  45.     }
  46. }
  47. else
  48. {
  49. $tekst = 'Jesteś w piwnicy<br /><a href="gra.php?act=lokacja&miejsce=piwnica&akcja=idzie" />Wejdź do piwnicy</a>';
  50. }
  51. ?>

Niestety, ale jest jakiś problem z zapytaniem do bazy, ponieważ wykonuje się ono podwójnie lub potrójnie-różnie. Nie wiem jaka jest tego przyczyna. Proszę o pomoc.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dodaje to, ponieważ pewna osoba podsuneła mi, że to może chodzić o inne pliki, które to includują. I dlatego się zapętla. A więc wszystko zawarte jest tak:
dom.php-to odpowiada za zaincludowanie odpowiedniego pliku:
  1. <?php
  2. $miejsce_dom = $_GET['miejsce'];
  3. $miejsce_pages_dom= array('piwnica');
  4. if(in_array($miejsce_dom,$miejsce_pages_dom)){
  5. include 'gra/lokacje/dom/'.$miejsce_dom.'.php';
  6. }
  7. else{
  8. $tekst = '
  9. Tutaj będzie opis lokacji zwanej Dom, tylko ktoś go musi zrobić.<br /><br />
  10.  
  11. <table>
  12.    <tr>
  13.        <td width="150" valign="top"><b><u>Piwnica</u></b><br />
  14.            <a href="gra.php?act=lokacja&miejsce=piwnica">Piwnica</a>
  15.                <br /></td>
  16.         <td width="150" valign="top"><b><u>Parter</u></b><br />
  17.         <a href="gra.php?act=lokacja&miejsce=salon">Salon</a>
  18.                <br /></td>
  19.        <td width="150" valign="top"><b><u>1 piętro</u></b><br />
  20.        <a href="gra.php?act=lokacja&miejsce=sypialnia">Sypialnia</a>
  21.                <br /></td>
  22.  
  23.    </tr>
  24.     <tr>
  25.        <td width="150" valign="top"><b><u>Strych</u></b><br />
  26.        <a href="gra.php?act=lokacja&miejsce=strych">Strych</a>
  27.                <br /></td>
  28.                <br /></td>
  29. </table>
  30. ';
  31. }
  32. ?>

lokacja.php-to sprawdza jaką mamy lokację i includuje właściwą(np.dom.php):
  1. <?php
  2. $lokacje = array('dom' => "lokacje/dom.php", 'londyn' => "lokacje/londyn.php");
  3.  
  4. if(array_key_exists($lokacja, $lokacje)){
  5. require $lokacje[$lokacja];
  6. }
  7. else{
  8. $tekst = 'Lokacja nie istnieje!<br /><br /><br /><br />';
  9. }
  10. ?>
A plik gra.hp-on wszystko includuje. Zawiera w sobie takie cos:
  1. <?php
  2. if(in_array($act,$act_pages)){
  3. include 'gra/'.$act.'.php';
  4. }
  5. else{
  6. if(isset($_SESSION['login'])){
  7. $tekst = 'jestes zalogowany';
  8. }
  9. else{
  10. header("Location: index.php");
  11. die();
  12. }
  13. }
  14. ?>

A potem dalej w kodzie jest echo $tekst;
No i nie wiem co powoduje te zapętlanie? Proszę o pomoc!

Ten post edytował ArekJ 31.12.2008, 14:12:01
Go to the top of the page
+Quote Post

Posty w temacie


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: 3.10.2025 - 21:35