Gå til innhold

if setning som slår ut feil..[LØST]


Anbefalte innlegg

har laget et ganske enkelt script som legger til produkter i tabellen kurv, og det jeg vil at den skal gjøre er at den skal finne ut om produktet ligger der fra før, hvis den gjør det, så skal den plusse på antallet... men det har jeg ikke fått til, noen som vet?

 

<?
//database snakk
include("db.php");
$cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);

$query = mysql_query("SELECT MAX(kurvID) AS kurvID FROM kurv");
$row = mysql_fetch_array($query);
$prodid = $_GET[pid];
$qty = $_GET[ant];

if((empty($prodid)) || (empty($qty)))
{
echo "ERROR";
}
else
{
//hente ut fra rader
$teller=$row["kurvID"];

//sjekker om at det er nyheter i databasen slik at teller kan fungere
if ($teller != 0)
{
 $teller++;
}
elseif ($teller == 0)
{
 $teller= 1;
}
else
{
 echo "error";
}

$query ="";
$query = mysql_query("SELECT * FROM kurv"); 
while($row = mysql_fetch_array($query))
{
 if($row[produktid] == $prodid)
 {
 	$at = $row[antall];
 	$sum = ($at + $qty);
 	$query2 = "";
 	$query2 = mysql_query("UPDATED kurv SET antall = $sum WHERE produktid = $prodid");

 	//WHERE sessionID = $session
 	//$query = "";

 	}
 else
 {
 	$query2 = "";
 	$query2 = mysql_query("INSERT INTO kurv VALUES ( '$teller','test','$prodid','$qty')");

 }
}
   echo "$prodid";
   echo "<br>";
 	echo "$qty";
   echo "<br>";
 	echo "$teller . du har lagt til en vare";
}
mysql_close();
?>

Endret av phun-ky
Lenke til kommentar
Videoannonse
Annonse

offtopic: veit. har ikke fått det til å funke, så jeg holder meg til teller inntil videre..

 

on topic:

 

endret koden litt, men er fremdeles feil..

 

<?
//database snakk
include("db.php");
$cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);

$query = mysql_query("SELECT MAX(kurvID) AS kurvID FROM kurv");
$row = mysql_fetch_array($query);
$prodid = $_GET[pid];
$qty = $_GET[ant];

if((empty($prodid)) || (empty($qty)))
{
echo "ERROR";
}
else
{
//hente ut fra rader
$teller=$row["kurvID"];

//sjekker om at det er nyheter i databasen slik at teller kan fungere
if ($teller != 0)
{
 $teller++;
}
elseif ($teller == 0)
{
 $teller= 1;
}
else
{
 echo "error";
}

$query ="";
$query = mysql_query("SELECT * FROM kurv"); 
while($row = mysql_fetch_array($query))
{
 if($row[produktID] == $prodid)
 {
 	$bryter = 0;
 }
 else
 {
 	$bryter = 1;
 }  
}
switch($bryter)
{
 case 0:
 	$at = ($row[antall]);
 	$sum = ($at + $qty);
 	$query2 = "";
 	$query2 = mysql_query("UPDATE kurv SET antall = $sum WHERE produktid = $prodid");
 	echo "update";
 	//WHERE sessionID = $session
 	//$query = "";
 	break;
 case 1:
 	$query2 = "";
 	$query2 = mysql_query("INSERT INTO kurv VALUES ( '$teller','test','$prodid','$qty')");
 	echo "insert";
 	break;
}
 	

 	echo "insert";
   echo "$prodid";
   echo "<br>";
 	echo "$qty";
   echo "<br>";
 	echo "$teller . du har lagt til en vare";
}
mysql_close();
?>

 

dette er utskriften jeg får:

 

updateinsert3

1

10 . du har lagt til en vare

 

men den legger ikke til, og den oppdateres ikke..

Endret av phun-ky
Lenke til kommentar

nå vil den telle og legge sammen antallet, men if'en slår til begge ganger fordi den går til den raden og sjekker om det var riktig, nei, da inserter den, og så går den til neste rad, som er feil og så inserter den på nytt.

 

<?
//database snakk
include("db.php");
$cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);

$query = mysql_query("SELECT MAX(kurvID) AS kurvID FROM kurv");
$row = mysql_fetch_array($query);
$prodid = $_GET[pid];
$qty = $_GET[ant];

if((empty($prodid)) || (empty($qty)))
{
echo "ERROR";
}
else
{
//hente ut fra rader
$teller=$row["kurvID"];

//sjekker om at det er nyheter i databasen slik at teller kan fungere
if ($teller != 0)
{
 $teller++;
}
elseif ($teller == 0)
{
 $teller= 1;
}
else
{
 echo "error";
}

$query ="";
$row = "";
$query = mysql_query("SELECT * FROM kurv"); 
$query2 = "";
while($row = mysql_fetch_row($query))
{
 if($row[2] == ($prodid))
 {
 	$at = ($row[3]);
 	$at += $qty;
 	$query2 = mysql_query("UPDATE kurv SET antall = $at WHERE produktID = $prodid");
 	echo "update";

 }
 else
 {
 	$array = mysql_query("SELECT * FROM kurv WHERE produktID = $prodid"); 
 	$query2 = mysql_query("INSERT INTO kurv VALUES ( '$teller','test','$prodid','$qty')");
 	echo "insert";

 }  
}
   echo "$prodid";
   echo "<br>";
 	echo "$at";
   echo "<br>";
 	echo "$teller . du har lagt til en vare";
}
mysql_close();
?>

Lenke til kommentar

fant ut av det nå, etter en laaang stund med riving av hår:

 

<?
//database snakk
include("db.php");
$cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);

$query = mysql_query("SELECT MAX(kurvID) AS kurvID FROM kurv");
$row = mysql_fetch_array($query);
$prodid = $_GET[pid];
$qty = $_GET[ant];
$act = $_GET[action];

if(empty($act))
{
echo "ERROR";
}
else
{
switch($act)
{
 case 0:
 	//hente ut fra rader
 	$teller=$row["kurvID"];

 	//sjekker om at det er nyheter i databasen slik at teller kan fungere
 	if ($teller != 0)
 	{
   $teller++;
 	}
 	elseif ($teller == 0)
 	{
   $teller= 1;
 	}	
 	else
 	{
   echo "error";
 	}
 
 	$query ="";
 	$row = "";
 	$query = mysql_query("SELECT * FROM kurv WHERE produktID = $prodid");
 	$numrows = mysql_num_rows($query);
 	$row = mysql_fetch_row($query);
 	if($numrows == 1)
 	{
   $at = ($row[3]);
   $at += $qty;
   $query2 = mysql_query("UPDATE kurv SET antall = $at WHERE produktID = $prodid");
   header("Location: [URL=http://www.umedia.no/?s=handlekurv");]http://www.umedia.no/?s=handlekurv");[/URL] 
 	}
 	else
 	{
   $query2 = mysql_query("INSERT INTO kurv VALUES ( '$teller','test','$prodid','$qty')");  
   header("Location: [URL=http://www.umedia.no/?s=handlekurv");]http://www.umedia.no/?s=handlekurv");[/URL] 
 	}
 	break;
 case 1:
 	echo "case 1";
 	break;
 case 2:
 	echo "case 2";  
 	break;
}
}
mysql_close();
?>

 

EDIT: var feil fil :p

Endret av phun-ky
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...