Just nu i M3-nätverket
Gå till innehåll

Hjälp med mysql query


pontaxxr

Rekommendera Poster

Hejsan som rubriken lyder så behöver jag hjälp med en mysql query.

Jag har flera produkter som har samma order_id och vill då visa alla men den visar bara 1 produkt av 30 st.

if (!$_GET['orderid']) {
} else {
$order_id = ereg_replace("[^0-9]", "", $_GET['orderid']); // filter everything but numbers for security
}

$sqlCommand = "SELECT * FROM oc_ny_racestuff_se_order_product WHERE order_id='$order_id'"; 
$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 
while ($row = mysqli_fetch_array($query)) { 
$product_id = $row["product_id"];

} 
mysqli_free_result($query); 
//---------------------------------------------------------------------------------
$sqlCommand = "SELECT * FROM oc_ny_racestuff_se_product WHERE product_id='$product_id'"; 
$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 
while ($row = mysqli_fetch_array($query)) { 
$model = $row["model"];
$location = $row["location"];
} 
mysqli_free_result($query); 
//---------------------------------------------------------------------------------

$sqlCommand = "SELECT * FROM oc_ny_racestuff_se_product_description WHERE product_id='$product_id'"; 
$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 
while ($row = mysqli_fetch_array($query)) { 
$name = $row["name"];
} 
mysqli_free_result($query); 
$output .= '<tr>
   <td>' . $product_id . '</td>
   <td>' . $name . '</td>
   <td>' . $model . '</td>
   <td>' . $location . '</td>
 </tr>';?>

http://ny.racestuff.se/FNQ/index.php?orderid=4 Här är sidan som visar resultatet tacksam för hjälp!

 

//Pontus.

Länk till kommentar
Dela på andra webbplatser

inte alls konstigt.

Du loopar nu igenom resultaten och sätter om variabeln hela tiden och därför får den bara med sig den sista produkten i ordern.

 

Du måste göra loop i loop eller skapa arrayer av resultaten

Länk till kommentar
Dela på andra webbplatser

inte alls konstigt.

Du loopar nu igenom resultaten och sätter om variabeln hela tiden och därför får den bara med sig den sista produkten i ordern.

 

Du måste göra loop i loop eller skapa arrayer av resultaten

 

Tack, tror du att du kan göra ett exempel för jag har ingen aning hur jag ska gå vidare. har googlat i över 3 timmar utan att hitta rätt.

Länk till kommentar
Dela på andra webbplatser

  • 4 veckor senare...

Jag får det inte att fungera har läst på en massa och ger snart upp :/ tror någon snäll själ att dom kan hjälpa mig? :) om inte göra det så ge gärna ett liknande exempel på hur för fattar inte.

Länk till kommentar
Dela på andra webbplatser

Prova att slå ihop dina frågor till en


$sqlCommand = 'SELECT prod_desc.name, product.product_id, product.model, product.location FROM oc_ny_racestuff_se_product_description AS prod_desc ';
$sqlCommand .= 'INNER JOIN oc_ny_racestuff_se_product AS product ON prod_desc.product_id = product.product_id ';
$sqlCommand .= 'INNER JOIN oc_ny_racestuff_se_order_product AS `order` ON product.product_id = `order`.product_id ';
$sqlCommand .= 'WHERE `order`.order_id=' .$order_id .'; ';

$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 
while ($row = mysqli_fetch_array($query)) { 
	$product_id = $row["product_id"];
	$name = $row["name"];
	$model = $row["model"];
	$location = $row["location"];

	$output .= '<tr>
	    <td>' . $product_id . '</td>
	    <td>' . $name . '</td>
	    <td>' . $model . '</td>
	    <td>' . $location . '</td>
	  </tr>';

}

mysqli_free_result($query); 

Gör frågan i databasen först för att se dom den fungerar

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...