2 Odwołania

0

Witam wszystkich mam kod PHP który pobiera z pierwszej strony 2 wartości, następnie ma je wysłać do drugiej ( są to osobne strony PHP ) oto kod:

if($id = $_GET['id'])
{
$sql = "SELECT  
    *
    FROM 
  itemshop
  WHERE itemid = $id";
}

elseif($id = $_GET['id2'])
{
$sql = "SELECT  
    *
    FROM 
  itemshop
  WHERE ilosc = $id2";
}
  
      $i = "0" ;
   $ergebnis = mysql_query($sql);
 $ergebnis = mysql_query($sql);
while($row = mysql_fetch_object($ergebnis))
   {

$itemname = "$row->itemname"  ;
$besch = "$row->beschreibung" ;
$coins = "$row->coins"      ;
$ilosc = "$row->ilosc"      ;
$itemid = "$row->itemid"    ;
$coins2 = $_SESSION["user_coins"];
echo "<meta http-equiv=\"refresh\" content=\"4;url=shopbuy.php?itemid=$itemid@$ilosc\">"  ;  
   }
 

i w linku jest odwołanie : $itemid to wtedy jest ok ale jak dodam do tego $ilosc to przestaje działać jak mam wpisać to w tym linku aby przesłał obydwie wartości ?

0

zamień @ na &

0

dzięki przeniosło mi wartość 1 i 2 niestety, kod odczytuje tylko pierwszą wartość ...

oto część 2 która odbiera wartości:

if($itemid = $_GET['itemid'])
{
		$sql = "SELECT * FROM itemshop WHERE itemid = '$itemid'";	
}	
elseif($ilosc = $_GET['ilosc'])
{
		$sql = "SELECT * FROM itemshop WHERE ilosc = '$ilosc'";	
}	
 

a tutaj kod który wysyła i wgrywa do bazy w $itemid dodaje wartość np 200 ale w $ilosc już nie daje 0 jak by nic nie było.

NULL , '$userid', 'MALL', '$pos', '$ilosc', '$itemid', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''

 
1

Po pierwsze porównanie w php to == lub === a nie przypisanie przypisz te 2 wartości z get'a do zmiennych przed warunkami i wyświetl sobie co one mają w sobie

0
elseif($ilosc = $_GET['ilosc'])

Na pewno elseif?

0

wybacz ja dopiero uczę się php i dla mnie to było łatwiejsze do napisania, chyba wiem w czym problem to wygląda tak 1 strona pokazuje wartości i wysyła je do 2 która je sprawdza i dopiero 2 wysyła do 3 która zapisuje do mysql i błąd jest taki że on nie pobierał ze strony pierwszej danych dlatego dawał 0.

0
Patryk27 napisał(a):
elseif($ilosc = $_GET['ilosc'])

Na pewno elseif?

no to co powinno tam być ?

0
monogi1994 napisał(a):
Patryk27 napisał(a):
elseif($ilosc = $_GET['ilosc'])

Na pewno elseif?

no to co powinno tam być ?

Mój błąd, źle spojrzałem na kod (z początku pomyślałem, że powinny być to po prostu dwa odrębne if-y).

0

@monogi1994 Dlaczego nie sprawdzasz od razu i od razu nie zapisujesz? a co jeśli ktoś zrobi na złość i przypisze podmienione dane omijając stronę walidacji?

0

Poradziłem sobie, dziękuje za pomoc i nakierowanie mnie na Rozwiązanie ;)

0

Rozumiem to tak:
Wyświetlasz produkty i zamawiasz wybierając id produktu oraz ilość tych produktów po czym weryfikujesz czy produkt o takim ID istnieje jeśli tak to czy jest odpowiednia ich ilość.
Jeśli takie masz założenie to te 2 zapytania

SELECT  
    *
    FROM 
  itemshop
  WHERE itemid = $id
SELECT  
    *
    FROM 
  itemshop
  WHERE ilosc = $id2

niestety nie zadziałają tak jak się tego spodziewasz pierwsze zwróci ci produkt o tym ID ale kolejne zwróci ci wszystkie produkty których ilość jest $id2 lepiej zrób 1 zapytanie sprawdzające obie rzeczy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1