Hallo

Hoe kan ik ervoor zorgen dat ik eerst de database kan controleren of het product al aanwezig is ?
Ik heb hetvolgende geprobeerd maar tevergeefs, er zullen wel een aantal fouten inzitten aangezien ik geen expert ben :-)


<?php
$sql2="SELECT count(aantal) AS 'som' FROM bestel_wagentje_elek ";
$sql2.="WHERE ploegnummer = '" . $_SESSION["ploegnummer"] . "' ";
$sql2.="AND sapnr = '$sapnr' ";
$resultaat = mysql_query($sql2) or die ("FOUT: " . mysql_error());

if(isset($resultaat)){
  $aantal=$resultaat['som'];
  $bestand=$aantal;
  if($aantal==0)$aantal=1;
 }
?>
<form action="<?php echo $PHP_SELF?>" method="post">
<input type="text" name="aantal" size="2" maxlength="2" 
  value="<?php echo $aantal ?>">&nbsp;Aantal&nbsp;<br><br>
<input type="submit" name="form_van" value="Inpakken">
<input type="hidden" name="sapnr" value="<?php echo $sapnr?>">
<input type="hidden" name="bestand" value="<?php echo $bestand ?>">
</form>
<?php


if ($aantal > 0){		
		$query2="INSERT INTO bestel_wagentje_elek (wagentje_id_elek, ploegnummer, productnaam, sapnr, aantal, basis_eenheid, bestel_eenheid, inhoud) ";
		$query2 .= "VALUES ('', '$ploegnummer', '$productnaam', '$sapnr', '$aantal', '$basis_eenheid', '$bestel_eenheid', '$inhoud');"; 
		$result = mysql_query($query2) or die ("FOUT: " . mysql_error()); 


}
else{
echo 'sorry gaat niet ';}
?>

dmv van mysql_num_rows() kan je dat controleren
Het wil maar niet lukken , wat doe ik toch fout ?
Hij voegt telkens dezelfde gegevens toe aan de dbase !

<?php
$sql2="SELECT count(aantal) AS 'som' FROM bestel_wagentje_elek ";
$sql2.="WHERE ploegnummer = '" . $_SESSION["ploegnummer"] . "' ";
$sql2.="AND sapnr = '$sapnr' ";
$resultaat = mysql_query($sql2) or die ("FOUT: " . mysql_error());
$aant_gegevens = mysql_num_rows($resultaat);
if(isset($aant_gegevens)){
  $aantal=$aant_gegevens['som'];
  $bestand=$aantal;
  if($aantal==0)$aantal=1;
 }
?>
<form action="<?php echo $PHP_SELF?>" method="post">
<input type="text" name="aantal" size="2" maxlength="2" 
  value="<?php echo $aantal ?>">&nbsp;Aantal&nbsp;<br><br>
<input type="submit" name="form_van" value="Inpakken">
<input type="hidden" name="sapnr" value="<?php echo $sapnr?>">
<input type="hidden" name="bestand" value="<?php echo $bestand ?>">
</form>
<?php


if ($aantal > 0){        
        $query2="INSERT INTO bestel_wagentje_elek (wagentje_id_elek, ploegnummer, productnaam, sapnr, aantal, basis_eenheid, bestel_eenheid, inhoud) ";
        $query2 .= "VALUES ('', '$ploegnummer', '$productnaam', '$sapnr', '$aantal', '$basis_eenheid', '$bestel_eenheid', '$inhoud');"; 
        $result = mysql_query($query2) or die ("FOUT: " . mysql_error()); 


}
else{
echo 'sorry gaat niet ';}
?>
Dit:
$sql2="SELECT count(aantal) AS 'som' FROM bestel_wagentje_elek ";
$sql2.="WHERE ploegnummer = '" . $_SESSION["ploegnummer"] . "' ";
$sql2.="AND sapnr = '$sapnr' ";

Zou ik ff vervangen door:

<?
$sql2="SELECT count(aantal) AS som 
FROM 
bestel_wagentje_elek 
WHERE ploegnummer = '".$_SESSION['ploegnummer'] ."' A
AND sapnr = '".$sapnr;
?>

en dat geldt ook voor je query2

dus

<?php
$query2="INSERT INTO bestel_wagentje_elek (ploegnummer, productnaam, sapnr, aantal, basis_eenheid, bestel_eenheid, inhoud) 
VALUES ('".$ploegnummer."','".$productnaam."', '".$sapnr."','".$aantal."', '".$basis_eenheid."', '".$bestel_eenheid."', '".$inhoud.')"; 
?>

ik krijg nu deze foutmelding.
FOUT: Unknown column 'VS20VAHUI105' in 'where clause'
VS20VAHUI105 staat voor ploegnummer
Ik denk dat het in onderstaand zit want als ik de naam FOUT bij de onderstaande query verander zie je dat ook dat het veranderd maar wat is er nu dan toch weer fout ?
<?php
$sql2="SELECT count(aantal) AS som FROM bestel_wagentje_elek WHERE ploegnummer = ".$_SESSION['ploegnummer'] ." AND sapnr = ".$sapnr;
$resultaat = mysql_query($sql2) or die ("FOUT: " . mysql_error());
?>
$sql2="SELECT count(aantal) AS som FROM bestel_wagentje_elek WHERE ploegnummer = ".$_SESSION['ploegnummer'] ." AND sapnr = '".$sapnr."'";

en zo?
Het blijft hetzelfde

Ik zal even volledige script plaatsen waarschijnlijk zitten daar een aantal fouten in :-(


<?php
session_start();
include ("login/ingelogd.php");
$aantal = $_REQUEST["aantal"];
$sapnr = $_REQUEST["sapnr"];
$productnaam = $_REQUEST["productnaam"];
$ploegnummer = $_REQUEST["ploegnummer"];
$basis_eenheid = $_REQUEST["basis_eenheid"];
$bestel_eenheid = $_REQUEST["bestel_eenheid"];
$inhoud = $_REQUEST["inhoud"];

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
            "http://www.w3.org/TR/html4/loose.dtd">
<html>
  <head>
    <title>Bestelsite</title>
    <link href="/stylesheets/stylbestand.css" rel="stylesheet" type="text/css">
  </head>
  <body>
<?php
if (!isset($_SESSION["gebruikersnaam"])){
	$tekst = "<h2 align=\"center\">Login.</h2>
	          <h3>Gelieve in te loggen.</h3>
		      Klik <a href=\"login/login.php\">hier</a> om in te loggen";
	echo($tekst);
}else{?>
</font></b> 
<table width="100" border="1" cellspacing="1" cellpadding="1" align="left">
  <tr>
    <th scope="col" align="left"><?PHP

include("config/verbinding.php");
$res = mysql_query("SELECT categorie_id_elek AS id,naam FROM bestel_elek_categorie");
while($x = mysql_fetch_assoc($res)) {
echo '<a href="index.php?categorie_id_elek='.$x['id'].'">'.$x['naam'].'</a><br>';
} 
?> </th>
  </tr>
</table>

<table width="700" border="0" align="center" cellpadding="1" cellspacing="1">
<tr>
<th width="79"  bgcolor="#999999">Sapnummer</th>
<th width="150" bgcolor="#999999">Productnaam</th>
<th width="80" bgcolor="#999999">Foto</th>
<th width="70" bgcolor="#999999">Basis e.h. </th>
<th width="80" bgcolor="#999999">Bestel e.h. </th>
<th width="50" bgcolor="#999999">Inhoud</th>
<th width="145" bgcolor="#999999">bestellen</th>
</tr>  
<?PHP


$query = mysql_query("SELECT categorie_id_elek AS id, naam, sapnr, beschrijving, foto, basis_eenheid, bestel_eenheid, inhoud  FROM bestel_elek_producten WHERE categorie_id_elek = " . $_GET['categorie_id_elek']);
while($x = mysql_fetch_array($query)) {
echo ('<tr><th bgcolor="#CCCCCC">'.$x['sapnr'].'</th>
<th bgcolor="#CCCCCC">'.$x['naam'].'</th>
<th bgcolor="#CCCCCC" width="60" height="60">'.$x['foto'].'</th>
<th bgcolor="#CCCCCC">'.$x['basis_eenheid'].'</th>
<th bgcolor="#CCCCCC">'.$x['bestel_eenheid'].'</th>
<th bgcolor="#CCCCCC">'.$x['inhoud'].'</th>
<th bgcolor="#CCCCCC"><form action="'. $PHP_SELF.'" method="post">
<input type="text" name="aantal" value="1" size="1" maxlength="2">
<input type="hidden" name="sapnr" value="'.$x['sapnr'].'">
<input type="hidden" name="productnaam" value="'.$x['naam'].'">
<input type="hidden" name="basis_eenheid" value="'.$x['basis_eenheid'].'">
<input type="hidden" name="bestel_eenheid" value="'.$x['bestel_eenheid'].'">
<input type="hidden" name="ploegnummer" value="'. $_SESSION["ploegnummer"] .'">
<input type="hidden" name="inhoud" value="'.$x['inhoud'].'">
<input type="submit" name="form_van" value="Voeg Toe">
</form></th>');
}
$sql2="SELECT count(aantal) AS som FROM bestel_wagentje_elek WHERE ploegnummer = ".$_SESSION['ploegnummer'] ." AND sapnr = '".$sapnr."'";
$resultaat = mysql_query($sql2) or die ("FOUT: " . mysql_error());
$aant_gegevens = mysql_num_rows($resultaat);
if(isset($aant_gegevens)){
  $aantal=$aant_gegevens['som'];
  $bestand=$aantal;
  if($aantal==0)$aantal=1;
 }
?>
<form action="<?php echo $PHP_SELF?>" method="post">
<input type="text" name="aantal" size="2" maxlength="2" 
  value="<?php echo $aantal ?>">&nbsp;Aantal&nbsp;<br><br>
<input type="submit" name="form_van" value="Inpakken">
<input type="hidden" name="sapnr" value="<?php echo $sapnr?>">
<input type="hidden" name="bestand" value="<?php echo $bestand ?>">
</form>
<?php


if ($aantal > 0){        
$query2=("INSERT INTO bestel_wagentje_elek (ploegnummer, productnaam, sapnr, aantal, basis_eenheid, bestel_eenheid, inhoud) VALUES ('".$ploegnummer."','".$productnaam."', '".$sapnr."','".$aantal."', '".$basis_eenheid."', '".$bestel_eenheid."', '".$inhoud."'");
        $result = mysql_query($query2) or die ("FOUT: " . mysql_error()); 


}
else{
echo 'sorry gaat niet ';}
?>
  </tr>
</table>
<?PHP
}
?>
</body>
</html>


Reageren