Avatar billede fancy Mester
21. april 2009 - 23:11 Der er 4 kommentarer og
1 løsning

kan ikke vælge kat.

jeg kan ikke se hvad der er galt.
men problem er jeg ikke kan vælge nogen kategori i mit script
som ser sådan ud

jeg for også denne fejl
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

<?php



//hent salgssted id.
$salgs_sted_id = $_GET['id'];

$action = $_GET['action'];

//se om vi mangler at vælge et salgssted...
if($action == "") {

    echo '<div align="center"><h2>Salgs sted</h2></div>';
    echo '<br>';
   
    $query = mysql_query("SELECT id,navn FROM `Salgs_sted`", $conn) or die(mysql_error());


    while ($row = mysql_fetch_array($query))
    {
        echo '<b><i><div align="center"><a href="?page=faktura_create&action=list&id=' . $row['id'] . '">- ' . utf8_encode($row['navn']) . '</a><br><br></div></i></b>';
    }

}




//hvis liste med varer der tilhører faktura...
if($action == "list") {

    echo '<h2>Hvilke vare skal udleveres ??.</h2>';
    echo '<br><br>klik på den vare eller tast vare nr. for den vare der skal udleveres HUSK og angiv antallet<br><br>';


   
    $query = mysql_query("SELECT hl.id, hl.navn, k.navn as knavn FROM `hovedlager` hl, kategori k WHERE k.id = hl.kategori_id ORDER BY k.navn ", $conn) or die(mysql_error());

    //gem kategori navn...
    $kat = "";

    echo'<form METHOD=POST name="faktura" ACTION="">
            Antal: <input TYPE="text" NAME="antal" SIZE="20" MAXLENGTH="30" value="">
          <select NAME="varer">';
     
   

    while ($row = mysql_fetch_array($query))
    {
        if($kat != $row['knavn']) {
            $kat = $row['knavn'];
            echo '<option VALUE="-">------------' . $kat . '------------</option>';
        }
       
        //konvater ISO over til utf8.
        $temp = utf8_encode($row['navn']);
           
        echo '<option VALUE="'. $row['id'] .'">'. $row['id'] .'. ' . $temp . '</option>';
    }

    echo '</select>
    <p>
          <input TYPE="button" NAME="Request" VALUE="Tilføj denne varer" onclick="document.faktura.action=\'index.php?page=faktura_create&action=add&id='. $salgs_sted_id . '\';submit();">
    </p>';
   

    echo '<br><br>Denne Udlevering indeholder disse varer:<br>';
   
    echo '<table border="0" width="100%" cellspacing="0" cellpadding="0">';
    echo '<tr><td>Antal:</td><td>Varer navn:</td></tr>';

    //lav faktura listen om til et array
    $liste_varer = explode(";", $_SESSION['faktura_varer']);
    $liste_antal = explode(";", $_SESSION['faktura_antal']);


    for($i=0; $i < count($liste_varer)-1; $i++)
    {
        $query = mysql_query("SELECT * FROM hovedlager WHERE id=".$liste_varer[$i], $conn) or die(mysql_error());
        $row = mysql_fetch_array($query);

        echo '<tr><td><input type="text" value="'. $liste_antal[$i] .'" name="antal'. $i .'" size="4"></td><td>'. utf8_encode($row['navn']) .'</td></tr>';
    }

    echo '</table>';

    echo '<input type="button" value="Opdater" onclick="document.faktura.action=\'index.php?page=faktura_create&action=update&id='. $salgs_sted_id . '\';submit();">';   

    echo '<p align="center">';
    echo '<input type="button" value="Godkend udleveringen" onclick="document.faktura.action=\'index.php?page=faktura_create&action=create&id='. $salgs_sted_id . '\';submit();">';
    echo '</p>';

    echo '</form>';
}




//se om der er tilføjet en varer...
if($action == "add") {

    updateAntal();

    if ($_POST['varer'] != "-") {
        $_SESSION['faktura_varer'] = $_SESSION['faktura_varer'] . $_POST['varer'] . ";";
        $_SESSION['faktura_antal'] = $_SESSION['faktura_antal'] . $_POST['antal'] . ";";
    }

    //tilbage til faktura listen
    header("location: index.php?page=faktura_create&action=list&id=". $salgs_sted_id);

}


//hvis der bare skal opdateres..
if($action == "update") {

    updateAntal();

    //tilbage til faktura listen
    header("location: index.php?page=faktura_create&action=list&id=". $salgs_sted_id);
}


//her oprette faktura....
if($action == "create") {

    //opdater antallet....
    updateAntal();

    //opret faktura...
    $query = mysql_query("INSERT INTO faktura (`tidspunkt`, `salgs_sted_id`) VALUES ('". date('Y-m-d H:i:s') ."', '". $salgs_sted_id ."');", $conn) or die(mysql_error());

    //hent faktura id...
    $query = mysql_query("SELECT id FROM faktura ORDER BY id DESC LIMIT 1");
    $row = mysql_fetch_array($query);

    $faktura_id = $row['id'];


    //indsæt alle varer i fakturar...
    $liste_varer = explode(";", $_SESSION['faktura_varer']);
    $liste_antal = explode(";", $_SESSION['faktura_antal']);

    for($i=0; $i < count($liste_varer)-1; $i++)
    {
    $query = mysql_query("INSERT INTO Bestilte_varer (`faktura_id`, `vare_id`, `antal`) VALUES ('".$faktura_id."', '". $liste_varer[$i] ."', '". $liste_antal[$i] ."');");

    $query = mysql_query("UPDATE hovedlager set antal_solgt = antal_solgt + ".$liste_antal[$i]." WHERE id ='".$liste_varer[$i]."';");
   
    //$query = mysql_query("UPDATE hovedlager set rest_lager = rest_lager - ".$liste_antal[$i]." WHERE id ='".$liste_varer[$i]."';");
        }
    //fjern alle varer fra hukommelsen...
    $_SESSION['faktura_varer'] = "";
    $_SESSION['faktura_antal'] = "";

    //vis os fakturaen...
    header("location: index.php?page=faktura_se&id=". $faktura_id);
}



//funktion der opdatere antallet af varer...
function updateAntal() {

    //lav faktura listen om til et array
    $liste_varer = explode(";", $_SESSION['faktura_varer']);
    $liste_antal = explode(";", $_SESSION['faktura_antal']);

    $_SESSION['faktura_antal'] = "";
    $_SESSION['faktura_varer'] = "";

    for($i=0; $i < count($liste_varer)-1; $i++)
    {
        //hvis der er angivet et positivt antal.
        if($_POST['antal' . $i] > 0) {
            $_SESSION['faktura_antal'] = $_SESSION['faktura_antal'] . $_POST['antal' . $i] . ";";
            $_SESSION['faktura_varer'] = $_SESSION['faktura_varer'] . $liste_varer[$i] . ";";
        }
    }

}




?>
Avatar billede CCodam Nybegynder
21. april 2009 - 23:31 #1
Du bruger $conn på 3 ud af 4 af dine Query's, men jeg kan ikke se at du har sat $conn noget sted?

Hvor er din forbindelse til mysql databasen?

Derudover har jeg følgende rettelser til dine Query's:
$query = mysql_query("SELECT id, navn FROM Salgs_sted", $conn) or die(mysql_error());

$query = mysql_query("SELECT hl.id, hl.navn, k.navn as knavn FROM hovedlager hl, kategori k WHERE k.id = hl.kategori_id ORDER BY k.navn", $conn) or die(mysql_error());

$query = mysql_query("SELECT * FROM hovedlager WHERE id='".$liste_varer[$i]."'", $conn) or die(mysql_error());

$query = mysql_query("SELECT id FROM faktura ORDER BY id DESC LIMIT 1");
Avatar billede fancy Mester
22. april 2009 - 16:24 #2
Det hjalp en del nu virker det.

men i stedet for at have en db med faste kunder hvordan kan jeg så lave en form men navn,adresse.osv så den hænger sammen med det der bliver bestilt
Avatar billede CCodam Nybegynder
22. april 2009 - 16:29 #3
#2 Det var godt at høre :)

Angående dit andet spørgsmål, så må jeg desværre melde pas, kan ikke lige overskue dit script, og hvordan denne funktion kunne implementeret...
Avatar billede fancy Mester
22. april 2009 - 22:22 #4
ok men det var rigtig godt nu kan jeg arbejde vidre med det

læg et svar
Avatar billede CCodam Nybegynder
23. april 2009 - 09:11 #5
fancy mit indlæg i #3 er et svar :=)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester