problem beim warenkorb

Weil du auch alle Bücher auswählst.
Deine Abfrage:
PHP:
$abruf="SELECT art_name,preis_ohne,art_nr FROM buecher";
Damit holst du alle Bücher, die in dieser Tabelle stehen aus der DB und trägst sie dann in die andere ein. Wenn aber nur ein bestimmtes herausgeholt werden soll, musst du das in die Abfrage mit reinbringen. Z.B. über die Artikelnummer.
 
ich hab es jetzt was verändert ich poste euch den quelltext:

<?php

session_start();
$sessid=session_id();


?>
<html>
<head>

<link rel="stylesheet" type="text/css" href="style.css">

</head>
<body>


<?php

include("inc/passwd.php");

$mysql=mysql_connect("$host","$bn","$pw")
or die("Keine Verbindung möglich");

mysql_select_db("$db",$mysql)
or die("Keine Verbindung zur Datenbank möglich");

$sql= "SELECT * FROM buecher";
$result=mysql_query($sql,$mysql);

if(!$result){

die("Fehler bei der abfrage");

}

echo"<form method='POST'>";
echo"<table border='0' style='border:5px solid #000000;'width='500''bgcolor='E0E0E0'>";
while($tupel = mysql_fetch_array($result)){

$_id = $tupel["_id"];
$bild = $tupel["bild"];
$art_nr = $tupel["art_nr"];
$art_name = $tupel["art_name"];
$art_beschr = $tupel["art_beschr"];
$preis_mit = $tupel["preis_mit"];
$preis_ohne = $tupel["preis_ohne"];

echo"
<tr>
<td valign='top'>

<table border='0'cellpadding='3'cellspacing='3'>
<tr>
<td valign='top'>$bild</td>
<td valign='top'class='f'>Artikelnummer: $art_nr<br /><br /><b>$art_name</b><br /><br /><br />$art_beschr<br /><br />
$preis_mit<br />
$preis_ohne</td>
</tr>
<tr>
<td><input type='hidden'value='$art_name'name='hidden'></td>";
echo'<td align="right"><input "class="button" type="submit" name="submit" value="In den Warenkorb"></td>';

echo"</table><br />";
echo"</form>";
}

if( isset($_POST['submit']) ) {

#################### das ist neu #######################

$hidden=$_POST['hidden'];

$arr[]=$hidden;

foreach($arr as $key){

$id=$key;
###################################################
}

$link = mysql_connect($host, $bn, $pw)
or die('Verbindung zum Datenbankserver nicht möglich!');
mysql_select_db($db, $link)
or die('Auswahl der Datenbank nicht möglich!');

$query = "SELECT `art_name`,`preis_ohne`,`art_nr` FROM`buecher`WHERE
`art_name`='$id'";
$result = mysql_query($query, $link);

if( !$result ) die('Datenbankabfrage fehlgeschlagen!');

while( $row = mysql_fetch_array($result) ) {
$query = "
INSERT INTO `warenkorb`SET
`art_id` = '".mysql_real_escape_string($sessid)."',
`art_name` = '".mysql_real_escape_string($row['art_name'])."',
`art_preis` = '".mysql_real_escape_string($row['preis_ohne'])."',
`art_nr` = '".mysql_real_escape_string($row['art_nr'])."',
`session` = '".mysql_real_escape_string($sessid)."'";
mysql_query($query, $link)
or die('Datenbankabfrage fehlgeschlagen!');
}
}



?>
</body>
</html>


ich habe kurzgesagt ein verstecktes textfeld angebracht wo immer der artikelaname rein geschrieben wird , undvergleiche den dann mit dem artikelnamen der DB
jetzt gibt er mir wieder nur den ersten artikel.
 
Zurück