Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] widoczność zmiennej
Forum PHP.pl > Forum > PHP
tomek_swat
witam
mam problem ze zmienną $idp, w zmiennej $query nie jest już widoczna, gdy zamiast niej wpiszę np. 1 wszystko działa.
proszę o pomoc, pzdr

  1. <?php
  2. $query2 = "select IdProd, NazwaProd from Producent";
  3. $result2 = mysql_query($query2);
  4. while(list($idp,$np) = mysql_fetch_row($result2)){
  5.  
  6. echo "<option value='$idp'>$np</option>";
  7. }
  8.  
  9. echo '</select>&nbsp;<input name="add" type="submit" id="add" value="Pokaż"></td>
  10. </tr></table></form>';
  11.  
  12. $query = "SELECT IdProduktu, NazwaP, KOpisP, Cena, IdProd FROM produkt where IdProd =
     '$idp' "
    ;
  13. $result = mysql_query($query);
  14. ?>
wlamywacz
A skąd ją bierzesz ?
tomek_swat
z 4 linijki, jak widać w szóstej wszystko jeszcze jest ok
pzdr
nexis
Naturalnie zmienna nie jest widoczna poza pętlą, więc możesz to zrobić tak:

  1. <?php
  2. $query2 = 'SELECT `IdProd`, `NazwaProd` FROM `Producent`';
  3. $result2 = mysql_query($query2);
  4. while( list($idp, $np) = mysql_fetch_row($result2) ) {
  5.  echo '<option value="' . $idp . '">' . $np . '</option>';
  6.  $lastid = $idp;
  7. }
  8. ?>
  9. </select> <input name="add" type="submit" id="add" value="Pokaż">
  10.  </td>
  11. </tr>
  12.  </table>
  13. </form>
  14. <?php
  15. $query = "SELECT `IdProduktu`, `NazwaP`, `KOpisP`, `Cena`, `IdProd` FROM `produkt` WH
    ERE `IdProd` = '"
     . $lastid . "'";
  16. $result = mysql_query($query);
  17. ?>
tomek_swat
ale w ten sposób zapamiętuję tylko ostatnią wartość?
Jawor
A ktora wartosc chcesz odczytac ?
Jezeli dowolna to dobierasz sie do tego w sposob $idp['n'] - gdzie n to numer kolejnego rekordu z bazy.
tomek_swat
hmm to już prawie działa jak robię tak:
  1. <?php
  2. $query2 = "select IdProd, NazwaProd from Producent";
  3. $result2 = mysql_query($query2);
  4.  
  5.  
  6. while(list($idp,$np) = mysql_fetch_row($result2)){
  7.  
  8. echo "<option value='$idp'>$np</option>";
  9. $tab[] = $idp;
  10. }
  11.  
  12. echo '</select>&nbsp;<input name="add" type="submit" id="add" value="Pokaż"></td>
  13. </tr></table></form>';
  14.  
  15. $query = "SELECT IdProduktu, NazwaP, KOpisP, Cena, IdProd FROM produkt where IdProd =
     '$tab[4]' "
    ;
  16. $result = mysql_query($query);
  17. ?>


ale właśnie chodzi o to by w miejscu gdzie teraz jest 4 w tablicy $tab był numer wybrany z formularza elementu option,
ktoś ma jeszcze jakiś pomysł
pzdr

hmm
rozwiązałem to w ten sposób:
przed formularzem:
  1. <?php
  2. $IdProd = !isset($_POST['IdProd'])NULL : $_POST['IdProd'];
  3. ?>


i potem już normalnie:

  1. <?php
  2. $query2 = "select IdProd, NazwaProd from Producent";
  3.  
  4. $result2 = mysql_query($query2);
  5.  
  6. echo "<option value='$IdProd' SELECTED>$np</option>";
  7. while(list($idp,$np) = mysql_fetch_row($result2)){
  8.  
  9. echo "<option value='$idp'>$np</option>";
  10. }
  11.  
  12.  
  13. echo '</select>&nbsp;<input name="add" type="submit" id="add" value="Pokaż"></td>
  14. </tr></table></form>';
  15.  
  16. $query = "SELECT IdProduktu, NazwaP, KOpisP, Cena, IdProd FROM produkt where IdProd =
     '$IdProd' "
    ;
  17. $result = mysql_query($query);
  18. ?>


chciałbym tylko by była widoczna nazwa producenta w select ?
pzdr
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.