Wanneer ik gegevens wijzig en op "Opslaan" druk krijg ik de melding dat de wijzigingen goed zijn doorgevoerd, maar er wordt niks gewijzigd en opgeslagen in de database. Ik denk zelf dat het aan het volgende stukje script ligt:

// opslaan
	if (isset($_POST['opslaan'])){
		for ($i = 0; $i <= $_POST['maxid'];$i++){				
			if (isset($_POST[$i])){
				$naam = $i."naam";
				$afdeling = $i."afdeling";
				$internnummer = $i."internnummer";
				$nummer = $i."nummer";
				$inlog = $i."inlog";
				mysql_query("UPDATE gsm SET 
					`naam` = '".$_POST[$naam]."',		
					`afdeling` = '".$_POST[$afdeling]."',
					`nummer` = '".$_POST[$nummer]."',					
					`internnummer` = '".$_POST[$internnummer]."', 
					`inlog` = '".$_POST[$inlog]."', 
					WHERE `id` = $i
				") or die (mysql_error());
			}
		}
		echo "De gegevens zijn succesvol bijgewerkt.<br>";
	}
	
	// bewerken
	if (isset($_POST['update'])){
		$maxid = 0;



Deel van de code:

<?php
//includes
include('config.php');

//session start
if(isset($_SESSION['id'])) {
} else{
	header("Location: index.php?pagina=beheer");
}
	// verwijderen
	if (isset($_POST['verwijder'])){
		foreach($_POST['telid'] As $value ){
			mysql_query("DELETE FROM `gsm` WHERE `id` = $value") or die (mysql_error());
			}
	}
	
	// opslaan
	if (isset($_POST['opslaan'])){
		for ($i = 0; $i <= $_POST['maxid'];$i++){				
			if (isset($_POST[$i])){
				$naam = $i."naam";
				$afdeling = $i."afdeling";
				$internnummer = $i."internnummer";
				$nummer = $i."nummer";
				$inlog = $i."inlog";
				mysql_query("UPDATE gsm SET 
					`naam` = '".$_POST[$naam]."',		
					`afdeling` = '".$_POST[$afdeling]."',
					`nummer` = '".$_POST[$nummer]."',					
					`internnummer` = '".$_POST[$internnummer]."', 
					`inlog` = '".$_POST[$inlog]."', 
					WHERE `id` = $i
				") or die (mysql_error());
			}
		}
		echo "De gegevens zijn succesvol bijgewerkt.<br>";
	}
	
	// bewerken
	if (isset($_POST['update'])){
		$maxid = 0;
	?>
		
    <form name="verzenden" action="" method="post">
    <h2>Bewerken</h2>
	
    <?php
		foreach($_POST['telid'] As $value ){
			echo "<input type='hidden' name='telid' value=$value />";
			
			// select
			$result2 = mysql_query("SELECT * FROM `gsm` WHERE id=$value");
			while($row2 = mysql_fetch_array( $result2 )) {
					
					echo "<b>".$row2['naam']."</b><br>";
					echo "<table>";
					echo "<td>Naam: </td><td><input type='text' size='25' name='".$id."naam' value='".$row2['naam']."' /></td>";
					echo "</tr><tr>";
					echo "<td>Telefoonnummer: </td><td><input type='text' size='25' name='".$id."nummer' value='".$row2['nummer']."' /></td>";
					echo "</tr><tr>";
					echo "<td>Inlognaam: </td><td><input type='text' size='25' name='".$id."inlog' value='".$row2['inlog']."' /></td>";					
					echo "</tr><tr>";
					echo "<td>Afdeling: </td><td><input type='text' size='25' name='".$id."afdeling' value='".$row2['afdeling']."' /></td>";
					echo "</tr><tr>";
					echo "<td>Intern verkort nummer: </td><td><input type='text' size='25' name='".$id."internnummer' value='".$row2['internnummer']."' /></td>";					
					echo "</tr></table>";
					

					
					if ($id > $maxid){
						$maxid = $id;
					}
				} 
		}
	echo "<input type='hidden' name='maxid' value='".$maxid."' />";
	?>
	<br>
	<center>
   
    <input type='submit' name='opslaan' value='Opslaan' />
    </center>
	</form>
    <?php
	} else {
	
	echo "<h2>Gegevens bewerken</h2>";
	?>
Bestaat de regel wel in de database?

Probeer eens met die("stuk!") er achter te komen waar in het script hij vast loopt...

PS: haal die backticks (`) weg bij je kolomname... das overbodig, en staat lelijk...
wat bedoel je met die("stuk!")?
Die backsticks heb ik weggehaald.
Boven aan het script:

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

?>
Krijg geen foutmeldingen te zien.
Hier heb je voor de duidelijkheid het totale script:

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

//includes
include('config.php');
include('dbcon.php');

//session start
if(isset($_SESSION['id'])) {
} else{
	header("Location: index.php?pagina=beheer");
}
	// verwijderen
	if (isset($_POST['verwijder'])){
		foreach($_POST['telid'] As $value ){
			mysql_query("DELETE FROM gsm WHERE id = $value") or die (mysql_error());
			}
	}
	
	// opslaan
	if (isset($_POST['opslaan'])){
		for ($i = 0; $i <= $_POST['maxid'];$i++){				
			if (isset($_POST[$i])){
				$naam = $i."naam";
				$afdeling = $i."afdeling";
				$internnummer = $i."internnummer";
				$nummer = $i."nummer";
				$inlog = $i."inlog";
				mysql_query("UPDATE gsm SET naam = '".$_POST[$naam]."',		
					afdeling = '".$_POST[$afdeling]."',
					nummer = '".$_POST[$nummer]."',					
					internnummer = '".$_POST[$internnummer]."', 
					inlog = '".$_POST[$inlog]."', 
					WHERE id = $i") 
					or die (mysql_error());
			}
		}
		echo "De gegevens zijn succesvol bijgewerkt.<br>";
	}
	
	// bewerken
	if (isset($_POST['update'])){
		$maxid = 0;
	?>
		
    <form name="verzenden" action="" method="post">
    <h2>Bewerken</h2>
	
    <?php
		foreach($_POST['telid'] As $value ){
			echo "<input type='hidden' name='telid' value=$value />";
			
			// select
			$result2 = mysql_query("SELECT * FROM `gsm` WHERE id=$value");
			while($row2 = mysql_fetch_array( $result2 )) {
					
					echo "<b>".$row2['naam']."</b><br>";
					echo "<table>";
					echo "<td>Naam: </td><td><input type='text' size='25' name='".$id."naam' value='".$row2['naam']."' /></td>";
					echo "</tr><tr>";
					echo "<td>Telefoonnummer: </td><td><input type='text' size='25' name='".$id."nummer' value='".$row2['nummer']."' /></td>";
					echo "</tr><tr>";
					echo "<td>Inlognaam: </td><td><input type='text' size='25' name='".$id."inlog' value='".$row2['inlog']."' /></td>";					
					echo "</tr><tr>";
					echo "<td>Afdeling: </td><td><input type='text' size='25' name='".$id."afdeling' value='".$row2['afdeling']."' /></td>";
					echo "</tr><tr>";
					echo "<td>Intern verkort nummer: </td><td><input type='text' size='25' name='".$id."internnummer' value='".$row2['internnummer']."' /></td>";					
					echo "</tr></table>";
					

					
					if ($id > $maxid){
						$maxid = $id;
					}
				} 
		}
	echo "<input type='hidden' name='maxid' value='".$maxid."' />";
	?>
	<br>
	<center>
   
    <input type='submit' name='opslaan' value='Opslaan' />
    </center>
	</form>
    <?php
	} else {
	
	echo "<h2>Gegevens bewerken</h2>";
	?>
	<!--Select script-->	
<SCRIPT TYPE="text/javascript">


function veranderscript() {
  if (document.bewerk.groep.value == 1) location = 'index.php?pagina=internbewerk';
    else if (document.bewerk.groep.value == 2) location = 'index.php?pagina=buitenlijnbewerk';
    else if (document.bewerk.groep.value == 3) location = 'index.php?pagina=gsmbewerk';
}

</SCRIPT>

<FORM NAME="bewerk" ACTION="">
<P><SELECT NAME="groep" ONCHANGE="veranderscript();">
<OPTION SELECTED>Kies een groep...
<OPTION VALUE="1">Interne nummers
<OPTION VALUE="2">Directe buitenlijn nummers
<OPTION VALUE="3">GSM nummers
</SELECT></P>
</FORM>

<!--Zoekfunctie-->	
	<form method="post" name="search-form" action="">
		<input type="text" name="zoek" value="" />
		<input type="submit" id="submit" value="zoeken" />
	</form>
    <br><br>
	
	<?php	
/* selectie lijst printen */
	if (isset($_POST['zoek'])){
		$zoekterm = $_POST['zoek'];
	} else {
		$zoekterm = "";
	}
?>
<form name="bewerkform" action="" method="post">
<input type='submit' value="Bewerk" name="update" />
<input type='submit' value="Verwijder" name="verwijder" /><br><br>
<table BORDER="0" ALIGN="left">
<tr align='left'>
	<td width="50">&nbsp;</td>
	<td width="180"><b>Naam</b></td>
    <td width="140"><b>Telefoonnummer</b></td>
    <td width="100"><b>Inlognaam</b></td>
    <td width="250"><b>Afdeling</b></td>
    <td width="180"><b>Intern verkort nummer</b></td>
</tr>
<?php
	$result2 = mysql_query("SELECT * FROM `gsm` WHERE `naam` LIKE '%$zoekterm%' ORDER BY `naam` ASC");
	while($row2 = mysql_fetch_array( $result2 )) {
			$id = $row2['id'];
			$result4 = mysql_query("SELECT * FROM gsm WHERE `id`=$id");
			while($row4 = mysql_fetch_array( $result4 )) {
				$naam = $row4['naam'];
			}
			echo "<tr align='left'>";
			echo "<td width='20'><input type='checkbox' value=".$row2['id']." name='telid[]' /></td>";
			echo "<td cwidth='180'>".$row2['naam']."</td>";
			echo "<td width='140'>".$row2['nummer']."</td>";
			echo "<td width='100'>".$row2['inlog']."</td>";
			echo "<td width='250'>".$row2['afdeling']."</td>";
			echo "<td width='20'>".$row2['internnummer']."</td>";
			echo "</tr>";
		}
		
	?>
</table>
</form>
<?php
}
?>
<br><br>

Jurgen schreef op 18.03.2009 12:30
Krijg je foutmeldingen?

nee geen foutmeldingen te zien!
Alles werkt eigenlijk behalve echt het opslaan in de database. Hij "echoot" dat de gegevens goed worden opgeslagen, maar er gebeurd niks in de database zelf
[code]
<?php
$query =
mysql_query("UPDATE gsm SET naam = '".mysql_real_escape_string($_POST[$naam])."',
afdeling = '".mysql_real_escape_string($_POST[$afdeling])."',
nummer = '".mysql_real_escape_string($_POST[$nummer])."',
internnummer = '".mysql_real_escape_string($_POST[$internnummer])."',
inlog = '".mysql_real_escape_string($_POST[$inlog])."'
WHERE id = '".mysql_real_escape_string($i)."'");
if (!$query) {
echo "Foutje in je query: ".mysql_error();
}
?>
[code]
Dit is al betere foutafhandeling.
Oh ja, er na inlog stond er een komma, en daarna komt geen veld meer.
Bedankt voor die komma opmerking en foutafhandeling, alleen ik heb nog steeds hetzelfde probleem =(
Je ziet geen foutmelding ofzo?
Kijk je wel in de juiste database ofzo?

probeer eens dit:


<?php
$sql = "UPDATE gsm SET naam = '".$_POST[$naam]."',        
afdeling = '".$_POST[$afdeling]."',
nummer = '".$_POST[$nummer]."',                    
internnummer = '".$_POST[$internnummer]."', 
inlog = '".$_POST[$inlog]."' 
WHERE id = '".$i."'";

$query = mysql_query($sql);
if (!$query) {
echo "Foutje in je query: ".mysql_error().".<br />De query was: ".$sql;
} else {
echo "SQL klopt: ".$sql;
?>

Zie dan geen foutmelding? En zo nee, welke query toont hij?
Zet de query eens in een aparte variabele en echo de query eens. Ook is het verstandig mysql_real_escape_string() te gebruiken.

Reageren