Heey,
Ik heb een probleempje met een script dat een groot aantal gegevens verwerkt in mijn database. Het gaat mis bij het wachtwoord (de rest doet het). Ik controleer namelijk of het wachtwoord echt wel is wat de gebruiker denkt dat het is. Dus die waardes moeten uit de while loop gehaald worden en apart behandeld worden. Hier is het script, ik ben er 100% zeker van dat de names in mijn html gelijk zijn aan de kolomnamen (alleen niet voor wachtwoordnieuw - maar dan hoeft ook niet geupdate te worden)
De foutmelding die ik krijg is als volgt:
Unknown column 'wachtwoordnieuw' in 'field list'
Ik haal dus wachtwoordnieuw uit de lijst, met if parameter!=wachtwoordnieuw. maar dat slaat die over. Ook haalt die de sessions overhoop zodra ik probeer in te loggen nadat ik het allemaal vernieuwd heb.
Alvast bedankt!
Ik heb een probleempje met een script dat een groot aantal gegevens verwerkt in mijn database. Het gaat mis bij het wachtwoord (de rest doet het). Ik controleer namelijk of het wachtwoord echt wel is wat de gebruiker denkt dat het is. Dus die waardes moeten uit de while loop gehaald worden en apart behandeld worden. Hier is het script, ik ben er 100% zeker van dat de names in mijn html gelijk zijn aan de kolomnamen (alleen niet voor wachtwoordnieuw - maar dan hoeft ook niet geupdate te worden)
De foutmelding die ik krijg is als volgt:
Unknown column 'wachtwoordnieuw' in 'field list'
PHP:
<?php
//Sessie's gebruiken
session_start();
//verbinding maken met de database
include "connectie.php";
//Naam ophalen uit de huidige sessie
if(isset($_SESSION["naam"])) {
$naam = $_SESSION["naam"]; }
else {
header( "refresh:5; url=$homepage" );
echo "Je was niet ingelogd. Je gaat nu naar de homepagae zo niet, klik <a href=".$homepage.">hier</a>.";
}
//Waardes toevoegen aan de databse
while (list($parameter,$inhoud) = each($_POST)) { //Alle waardes doorlopen $parameter = kolomnaam = name(html)
if((!empty($inhoud)) && ($paramter!="wachtwoord") && ($paramter!="wachtwoordnieuw")) { //Kijken of de inhoud niet leeg is
$query = "UPDATE gegevens SET $parameter = '$inhoud' WHERE naam = '$naam';"; //De inhoud toevoegen aan de kolom (met de naam $parameter)
mysql_query($query,$connectie) or die ($foutmelding.mysql_error()."1"); //Querry uitvoeren
}
if((!empty($inhoud)) && ($paramter == "wachtwoordnieuw")) { $wachtwoordnieuw = "$inhoud"; } //wachtwoord check maken als die niet leeg is
if((!empty($inhoud)) && ($paramter == "wachtwoord")) { $wachtwoord = "$inhoud"; } //Same voor het eigenljke nieuwe wachtwoord
}
//Wachtwoord updaten
if((isset($wachtwoord)) && (!isset($wachtwoordnieuw))) { header("location: alfaf2.html"); } //Foutmelding voor als de check niet is ingevuld
if((!isset($wachtwoord)) && (isset($wachtwoordnieuw))) { header("location: alfaf2.html"); } //Foutmelding voor als alleen de check is ingevuld
if((isset($wachtwoord)) && (isset($wachtwoordnieuw))) { //kijken of ze beiden aangemaakt zijn (oftewel zijn ze gevuld)
if ( $wachtwoord == $wachtwoordnieuw ) { //De wachtwoorden moeten wel overeenkomen dan mag je vullen
$query = "UPDATE gegevens SET wachtwoord = ".$wachtwoord." WHERE naam = ".$naam.";"; //Querry maken - het wachtwoord toevoegen aan de tabel wachtwoord
mysql_query($query,$connectie) or die ($foutmelding.mysql_error()."2"); //Querry uitvoeren
session_unset(); //Sessies opnieuw gaan instellen
$_SESSION["wachtwoord"] = $wachtwoord; //Het nieuwe wachtwoord invoeren
$_SESSION["naam"] = $naam; //Natuurlijk moet ook de naam niet vergeten worden.
}
else { header("location: alfaf.html"); } //Komen de wachtwoorden niet overeen? ga dan naar die foutmeldpagina
}
//Database afsluiten
mysql_close($connectie) or die ($foutmelding.mysql_error());
//Teruggaan naar de pagina
header("location: ../pagina.php");
?>
Ik haal dus wachtwoordnieuw uit de lijst, met if parameter!=wachtwoordnieuw. maar dat slaat die over. Ook haalt die de sessions overhoop zodra ik probeer in te loggen nadat ik het allemaal vernieuwd heb.
Alvast bedankt!