Merkzettel/Warenkorb

Ich danke euch,
habe mich für die Version mit der Tabelle entschieden. Klappt wunderbar. Allerdings habe ich noch ein kleines Problem:
Wie vermeide ich, daß ein Artikel zweimal gespeichert wird?
Ich müsste also gucken, ob die session_id und die artikel_id zusammen schon einmal vorkommen und dann das speichern übergehen.
vielleicht könnte mir jemand kurz den code dafür nennen.
 
Die Tabelle hab ich jetzt einfach sinnvollerweise mal erweitert:

INT id AUTO_INCREMENT //Primärschlüssel
INT sessionid //SessionID, anhand der der jeweilige User identifiziert wird
INT artikelid //ID des Artikels
INT artikelanzahl //Anzahl an Einheiten des Artikels.



PHP:
<?
# $attikel_anzahl : Anzahl an hinzuzufügenden Einheiten des Art.

session_start();

$get = "select * from userart where sessionid = '$session_id' AND artikelid = '$artikel_id'";
$res = mysql_query($get);
$num = mysql_num_rows($res);

if($num)
{
    $set = "insert userart values ('', '$session_id', '$artikel_id', '$artikel_anzahl')";
    $res = mysql_query($set);
}
else
{
    $set = "update userart set artikel_anzahl=artikelanzahl+$artikel_anzahl where sessionid = '$session_id' AND artikelid = '$artikel_id'";
    $res = mysql_query($set);
}
?>
 
Hallo,
hört sich gut an, ist nur leider nicht das, was ich brauche, da es bei mir keine Anzahl gibt. Es handelt sich um einen reinen Merkzettel, wo in dem Moment nur die session_id und die "Artikel_id" gespeichert wird und natürlich eine ID als Primärschlüssel. Sollte nun ein "Artikel" zweimal "gemerkt" worden sein, steht er auch zweimal in der DB. Gleiche session_id gleiche Artikel_id aber unterschiedliche ID. Will ich mir später den "Merkzettel" anschauen, erscheint dort zweimal der gleiche Artikel. Ich möchte also vor dem speichern nur prüfen, ob es die Kombination session_id - Artikel_id schon einmal gibt. Sollte dieses der Fall sein, dann soll nicht noch einmal in der DB gespeichert werden.
 
Sorry, aber das wird sich ja wohl ableiten lassen:

PHP:
<?
session_start();

$get = "select * from userart where sessionid = '$session_id' AND artikelid = '$artikel_id'";
$res = mysql_query($get);
$num = mysql_num_rows($res);

if(!$num)
{
    $set = "insert userart values ('', '$session_id', '$artikel_id')";
    $res = mysql_query($set);
}

?>
 
Sorry,
aber ich hatte mir den Code beim ersten mal nicht so genau angeschaut. Aber es läuft, genau so, wie ich es haben möchte.
Dank euch habe ich jetzt einen coolen "Merkzettel".
 
Zurück