Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]wyświetlanie id wybranego char
Forum PHP.pl > Forum > Przedszkole
pajurpl
Witam mam problem próbuję id wybranego charname wyświetlić w formularzu aby potem te id dodać do bazy danych
id próbuje wyświetlić za pomocą tego
  1. <?php echo $charname[1]=$characterID[1] ?>
lecz to wyświetla id innego charname patrzałem za pomocą $_POST ale też nie wyświetla

  1. <?php if ($_POST['buy']==false): ?>
  2. <?php
  3. $id=$_SESSION['username'];
  4. $query ="SELECT * FROM accounts,characters WHERE accounts.accountID=characters.ownerID AND username='$id'";
  5.  
  6. $result = mysql_query($query) or die(mysql_error());
  7. // Print out the contents of each row into a table
  8. echo "<select size=1 name=char_receiver>";
  9. while($row = mysql_fetch_array($result)){
  10. $charname[1] = $row['charname'];
  11. $characterID[1] = $row['CharacterID'];
  12. echo '<option>'.$charname[1].'</option>';
  13. }
  14. echo "</select>";
  15.  
  16.  
  17. ?>
  18.  
  19.  
  20. <form method='POST' action='2.php'>
  21. <table cellspacing="10">
  22. <tr>
  23. <td>ID</td><td>Stack ID</td><td>Nazwa</td><td>Cena</td><td></td>
  24. </tr>
  25. <tr>
  26. <td><?php echo $_POST['itemid']?><input type="hidden" name="item1" value="<?php echo $_POST['itemid']?>"/></td>
  27. <td><?php echo $_POST['itemstack_id']?><input type="hidden" name="stack1" value="<?php echo $_POST['itemstack_id']?>"/></td>
  28. <td><?php echo $_POST['name']?><input type="hidden" value="<?php echo $name ?>"/></td>
  29. <td><?php echo $_POST['cost']?><input type="hidden" value="<?php echo $cost ?>"/></td>
  30. <td><input type="hidden" name="char_receiver" value="<?php echo $charname[1]=$characterID[1] ?>"/></td>
  31. <td><input type='submit' name="buy" value='Kup'></td>
  32. </tr>
  33. </table>
  34.  
  35. </form>
  36. <?php endif; ?>
djgarsi
O echo przypadkiem nie zapomiałeś?
pajurpl
dodałem i nadal dodaje inne id
untorched
Jak już to:
Cytat
echo $charname[1];

// lub

echo $characterID[1];
pajurpl
patrzyłem pojedynczo też i nadal wyświetla id innego charname
nospor
Toz w tym temacie
http://forum.php.pl/index.php?showtopic=23...p;#entry1126851
przerabiales identyczny problem... To po co Ty na to forum zaglądasz, jak nic totalnie z niego nie wynosisz... Jaki tego sens?
pajurpl
to nie działa ten $_POST patrzałem już prędzej
nospor
Widac źle sprawdzales.... wychodze oczywiscie z zalozenia, ze wylasz wczesniej gdzies forma z tym co chcesz wstawiac do drugiego forma... Bo z kodu co tu widac, to twoj select option wisi w powietrzu nie powiązany z zadnym formem.
pajurpl
ok tamto zrobiłem na inny sposób

a czemu jak przesyłam wyświetlone id w formularzu 1 na stronę z 2 formularzem to odbiera inne id a nie te z formularza 1
w 2 formularzu odbieram przez $_POST ale coś nie do końca przechwyca te id co ma
gdzie tu coś jeszcze wstawić


to jest 1 formularz
  1. <?php
  2.  
  3. $serwer_bazy = "localhost";
  4. $login_bazy = "root";
  5. $haslo_bazy = "password";
  6. $nazwa_bazy = "market";
  7. mysql_connect("$serwer_bazy","$login_bazy","$haslo_bazy") or die ("could not connect to mysql");
  8. mysql_query('SET CHARSET utf8');
  9. mysql_select_db("$nazwa_bazy") or die ("no databasez");
  10.  
  11. $wynik = mysql_query("SELECT * FROM goldrewards ORDER BY id")
  12. or die('Błąd zapytania');
  13.  
  14.  
  15. /* jeżeli wynik jest pozytywny, to wyświetlamy dane */
  16. echo "<form method='POST' action='market_step_buy.php'>";
  17. while($r = mysql_fetch_assoc($wynik)) {
  18. $itemid = $r['itemid'];
  19. $name = $r['name'];
  20. $picturepath = $r['picturepath'];
  21. $description = $r['description'];
  22. $cost = $r['cost'];
  23. $itemstack_id = $r['itemstack_id'];
  24.  
  25. echo "<table cellspacing='20' align='center'>
  26. <tr >
  27. <td><input type='hidden' name='itemid' value='".$itemid." '/>
  28. <input type='hidden' name='itemstack_id' value='".$itemstack_id."'/></td>
  29. <td width='250'><img src='".$picturepath."' /><br />
  30. <b>".$name."</b><input type='hidden' value='".$name." '/><br />
  31. ".$description."<input type='hidden' value='".$description."'/></td>
  32. <td>".$cost."<input type='hidden' value='".$cost."'/>
  33. <img src='image/coins.png' width='18' height='13' /></td>
  34.  
  35. <td><input type='image' src='image/buy.png'></td>
  36. </tr>
  37. ";
  38. }
  39. echo "</table></form>";
  40. ?>



a tu 2 formularz

  1. <?php
  2. if(isset($_SESSION['zalogowany'])) {
  3. //nr1
  4. ?>
  5. <?php if ($_POST['buy']==false): ?>
  6. <?php
  7. $id=$_SESSION['username'];
  8. $query ="SELECT * FROM accounts,characters WHERE accounts.accountID=characters.ownerID AND username='$id'";
  9.  
  10. $result = mysql_query($query) or die(mysql_error());
  11. // Print out the contents of each row into a table
  12. echo "<p>Twoje Postacie:</p>";
  13. echo "<select size=1 name=char_receiver>";
  14. while($row = mysql_fetch_array($result)){
  15. $charname[1] = $row['charname'];
  16. $characterID[1] = $row['CharacterID'];
  17. echo '<option>ID:&nbsp;'.$characterID[1].' &nbsp; &nbsp;Nick:&nbsp;'.$charname[1].'</option>';
  18. }
  19. echo "</select>";
  20.  
  21.  
  22. ?>
  23.  
  24. <form method='POST' action='market_step_buy.php'>
  25. <table cellspacing="10" align="center">
  26. <tr>
  27. <td><input type="hidden" name="item1" value="<?php echo $_POST['itemid'] ?>"/></td>
  28. <td><input type="hidden" name="stack1" value="<?php echo $_POST['itemstack_id']?>"/></td>
  29. </tr>
  30. <tr>
  31. <td>Wpisz ID Postaci:</td>
  32. </tr>
  33. <tr>
  34. <td><input type="text" name="char_receiver" value="" onkeyup="this.value=this.value.replace(/\D/g,'')"/></td>
  35. </tr>
  36. <tr>
  37. <td><p class="info">*Wpisz powyżej ID postaci na, która ma być wysłany przedmiot np. 2)<br />*ID znajduje się w liście powyżej.</p></td>
  38. </tr>
  39. </table>
  40. <table>
  41. <tr align="center">
  42. <td><input type='submit' name="buy" value='Kup'></td>
  43. </tr>
  44. </table>
  45. </form>
  46. <?php endif; ?>
  47.  
  48. <?php
  49. if (isset($_POST['buy']))
  50. {
  51. // odbieramy dane z formularza
  52. $item1 = $_POST['item1']; // ID Wysyłanego Itemu
  53. $stack1 = $_POST['stack1']; //Przedmiot w 1 Slocie Delivery
  54. $item2 = "0"; //ID 2 Itemu w Delivery
  55. $stack2 = "0"; //Slot numer 2 w Delivery
  56. $item3 = "0"; //ID 3 Itemu w Delivery
  57. $stack3 = "0"; //Slot numer 3 w Delivery
  58. $item4 = "0"; //ID 4 Itemu w Delivery
  59. $stack4 = "0"; //Slot numer 4 w Delivery
  60. $item5 = "0";//ID 5 Itemu w Delivery
  61. $stack5 = "0"; //Slot numer 5 w Delivery
  62. $charid_SENDER = '2'; // ID Postaci z której jest wysyłany Przedmiot
  63. $name_SENDER = 'Heroes Sklep'; //Nazwa Wiadomości u postaci z której była wysłany item
  64. $charid_RECEIVER = $_POST['char_receiver']; // ID Postaci, która ma dostać przedmiot
  65. $name_RECEIVER = 'Przedmiot z PD Sklepu'; //Nazwa Wiadomości którą dostanie postac z itemem
  66. $gold_REQUIRED = '0'; //Ilość wymaganego golda do odebrania wiadomości/itemu
  67.  
  68. if($item1 and $stack1) {
  69.  
  70. // łączymy się z bazą danych
  71. $connection = @mysql_connect('localhost', 'root', 'password')
  72. or die('Brak połączenia z serwerem MySQL');
  73. $db = @mysql_select_db('openheroes', $connection)
  74. or die('Nie mogę połączyć się z bazą danych');
  75.  
  76. // dodajemy rekord do bazy
  77. $ins = @mysql_query("INSERT INTO mailbox SET item1='$item1', stack1='$stack1', charid_SENDER='$charid_SENDER', name_SENDER='$name_SENDER', charid_RECEIVER='$charid_RECEIVER', name_RECEIVER='$name_RECEIVER', gold_REQUIRED='$gold_REQUIRED', item2='$item2', stack2='$stack2', item3='$item3', stack3='$stack3', item4='$item4', stack4='$stack4', item5='$item5', stack5='$stack5'");
  78.  
  79. if($ins) echo "<p class='success'>Przedmiot został wysłany na Delivery.</p>";
  80. else echo "Błąd nie udało się dodać nowego rekordu";
  81.  
  82. mysql_close($connection);
  83. }
  84. }
  85.  
  86. ?>
  87.  
  88. <?
  89. } else
  90. {
  91. echo "<p class='error'>Strona dosępna po zalogowaniu.</p>" ;
  92. };
  93. ?>
nospor
Cytat
a czemu jak przesyłam wyświetlone id w formularzu 1 na stronę z 2 formularzem to odbiera inne id a nie te z formularza 1
A czemu uwazasz, ze klikniecie przycisku buy.png przy wyswietlonych danych powoduje wyslanie tylko i wylacznie tych danych?
To są podstawy HTML i formularzy i wypadaloby wpierw się z nimi zapoznac i zrozumiec, a dopiero potem brac sie za php i bazy danych.
pajurpl
zmieniłem na zwykle <input type="submit" value="Dodaj" /> ale też tylko przesyła id nie to co jest wyświetlone w formularzu 1
nospor
A dlaczego uwazasz, ze zmiana IMAGE na SUBMIT spowoduje, ze będą się wysylać tylko dane obok tego SUBMIT a inne już nie?
pajurpl
ok po metodzie prób i błędów w końcu znalazłem problem
  1. <form method='POST' action='market_step_buy.php'>
miało być też tam gdzie cały kod w echo a nie nad while

dzięki za wskazówki i porady
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.