ik wil van het werkoverzicht de week selecteren doormiddel van een dropdown en dan wil ik als uitkomst alle dagen en omschr, van deze week.
ik krijg nu alleen de gegevens van 1 id terug?
wie kan mij hierin helpen.


<?

	// Connecten met database
	include("config.inc.php");


    if(empty($_POST)){
	$sql = "SELECT weeknr FROM werkoverzicht";
	}
	else {
    $sql = "SELECT * FROM werkoverzicht WHERE weeknr='".mysql_real_escape_string($_POST["weeknr"])."'";
	}
	$result = mysql_query($sql);
		
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>

<?

	if (empty($_POST)){

?>

	<h2>kies weeknr</h2>
	<form name="form1" action="<? echo($_SERVER["PHP_SELF"]); ?>" method="post">
	<p>weeknr: 
	<select name="weeknr">
				    
<? 

	while ($row=mysql_fetch_array($result,MYSQL_ASSOC)){
    echo("<option value='" .$row['weeknr']. "'>" .$row['weeknr']. "</option>");
	}
	 
?>
	</select> 
	<input type="submit" value="Tonen" />
	</p>
	</form>
    <p>
<?
              
	}else{
	echo("<h2>Doorgegeven weeknr: " .$_POST["weeknr"]. "</h2>\n");

	if ($row = mysql_fetch_array($result,MYSQL_ASSOC)){
	echo("ID = " . $row['id'] . "<br>\n");
	echo("weeknr = " . $row['weeknr'] . "<br>\n");
	echo("dag = " . $row['dag'] . "<br>\n");
	echo("omschrijving = " . $row['omschrijving'] . "<br>\n");
	
	echo("<a href=\"" . $_SERVER["PHP_SELF"] . "\">Ander weeknr selecteren</a>");
	
    }
	}

?>
	</p>
    <p>&nbsp;
    </p>
</body>
</html>
 


Er zullen dan wel meerdere records zijn. Dus gebruik een while() want nu zie je er maar 1.
1. op de manier controleer je neit of er wel dan niet een POST wordt gedaan
<?php
if(empty($_POST)){
?>
2. en empty haal je alleen over de waarden heen waarvan je de waarde al weet dus zeer zeker niet over de superglobals
3. Je houd je ook niet aan html / DOCTYPE regels
4. strings qoute je altijd met '' met hier en daar een uitzondering - SQL statements -

dus als we de bcode van jouw omzetten naar andere baggercode:

<?php
ini_set('display_errors',1);
error_reporting(E_ALL);

    // Connecten met database
    include 'config.inc.php'; // inlcude is geen functie dus geen (), dat geld ook voor echo

    $sql = "SELECT weeknr FROM werkoverzicht";
    $bPost = fasle;
    if (   $_SERVER['REQUEST_METHOD'] == 'POST' 
        && isset($_POST[''weeknr']) && ctype_digit($_POST[''weeknr'])  && ((int)$_POST[''weeknr'] > 0 && (int) $_POST[''weeknr'] <= 53 )
    	
    	$sql = "SELECT *
    		    FROM  werkoverzicht 
    		    WHERE weeknr='".mysql_real_escape_string($_POST["weeknr"])."'";
    		    
    	$bPost = true;
    }
    
    if (!($result = mysql_query($sql))) {
    	echo mysql_error().'<br />';
    	echo $sql;
    	exit(); //omdat er geen logica in dit script zit stop maar met het uitvoeren
    }
        
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>

<?

    if ($bPost === false) {

?>

	    <h2>kies weeknr</h2>
	    <form name="form1" action="<?php echo($_SERVER["PHP_SELF"]); ?>" method="post">
	    <p>weeknr: 
	    <select name="weeknr">
                    
<? 

	    while ($row=mysql_fetch_assoc($result)){
	       echo '<option value="' .$row['weeknr'].'">'.$row['weeknr'].'</option>';
	    }
	     
?>
	    </select> 
	    <input type="submit" value="Tonen" />
	    </p>
	    </form>
	    <p>
<?
              
    }
    else {
	    echo '<h2>Doorgegeven weeknr: ' .isset($_POST['weeknr']) && trim($_POST['weeknr']) != '' && ctype_digit($_POST["weeknr"]) ? $_POST['weeknr'] : 'Weeknummer onbekend!' . '</h2>');

    	while ($row = mysql_fetch_assoc($result)){
		    echo 'ID = ' . $row['id'] . '<br />';
		    echo 'weeknr = ' . $row['weeknr'] . '<br />');
		    echo 'dag = ' . $row['dag'] . '<br />';
		    echo 'omschrijving = ' . $row['omschrijving'] . '<br />';		
		    echo '<a href="'. $_SERVER['PHP_SELF'].'">Ander weeknr selecteren</a>';
    
	    }
    }

?>
    </p>
    <p>&nbsp;
    </p>
</body>
</html> 


Noppes hoe zou jij het dan doen als dit een baggercode is?

ik ben maar een beginneling en vind dat ik al een stukje op weg ben,
maar nog niet alles ziet en weet.

en de code die jij nu geplaats hebt die werkt niet
Het is je eigen code, alleen dan wat overzichtelijker en daar waar nodig aangeapast. Misschien dat ik een intrepetatie fout heb gemaakt, maar dan nog....

Het is dus jouw logica die je ziet niet de mijne...

En met `werkt niet` kan ik niet uit de voeten, als je weet aan te geven wat er dan niet werkt kan er uiteraard naar gekeken worden..

Krijg je parse errors, mysql foutmelding of wat

Reageren