php hulp

Status
Niet open voor verdere reacties.

Ocirina

Gebruiker
Lid geworden
26 dec 2006
Berichten
90
Hallo,
Met hetzelfde script kan ik wel gebruikers registreren, maar niet editen.
Geen fout meldingen etc. wie kan me helpen?
mvg willem.

PHP:
<?php
$submit = $_POST['submit'];

$user = ($_POST['user']);
$woord = $_POST['woord'];
$nieuwwoord = ($_POST['nieuwwoord']);
$nieuwpassword = md5 ($_POST['nieuwpassword']);

if ($submit)
{

 if ($user&&$woord)
 {
		{
			$connect = mysql_connect("localhost","root","willem") or die("Kan geen verbinding maken met mysql server.");
			mysql_select_db("users") or die("kon geen database selecteren.");

			$query = mysql_query("SELECT * FROM users WHERE user='$user'");
	
			$numrows = mysql_num_rows($query);

			if ($numrows!=0)
			{
 
				while ($row = mysql_fetch_assoc($query))
				{
						$dbid = $row['id'];
						$dbname = $row['name'];
						$dbuser = $row['user'];
						$dbwoord = $row['woord'];
						$dbdate = $row['date'];
						
					
			
				//kijk of ze overeenkomen?
				if ($user==$dbuser&&$woord==$dbwoord)
					{
						$queryreg = mysql_query
							("
							INSERT INTO users VALUES 
							('$dbid','$dbname','$dbuser','$nieuwwoord','$nieuwpassword','$dbdate')
							");
						die ("uw wachtwoord is veranderd.");
					}
					else
					{
						die ("Foutief geheimwoord!");
					}
				}
			}
		}
 
 
 
 
 
 }
 else
 {
 echo "Vul <b>alles</b> in!";
 }


}



?>

<html>
<center>
<p>
<form action='vraag.php' method='POST'>
	<table>
		<tr>
			<td>
			Gebruikersnaam:
			</td>
			<td>
			<input type='text' name='user' value='<?php echo $user ?>'>
			</td>
		</tr>
		<tr>
			<td>
			Geheime woord:
			</td>
			<td>
			<input type='text' name='woord' value='<?php echo $woord ?>'>
			</td>
		</tr>
		<tr>
			<td>
			Nieuw wachtwoord:
			</td>
			<td>
			<input type='password' name='nieuwpassword'>
			</td>
		</tr>
		<tr>
			<td>
			Nieuwe geheime woord:
			</td>
			<td>
			<input type='text' name='nieuwwoord' value='<?php echo $nieuwwoord ?>'>
			</td>
		</tr>
		
	</table>
	<p>
	<input type='submit' name='submit' value='Verander'>
</form>
</center>
</html>
 
Laatst bewerkt:
Ik zie geen code in het script die je in staat zou moeten stellen om users te editen, dus daar zou het aan kunnen liggen :confused:


Zo te zien insert ie bij iedere "wijziging" een nieuwe kopie van het useraccount met het nieuwe wachtwoord ipv dat ie de bestaande aanpast.
 
Laatst bewerkt:
Goede avond,
Nou ik dacht met dit dat die de data zou overschrijven? mvg
PHP:
$queryreg = mysql_query
							("
							INSERT INTO users VALUES 
							('$dbid','$dbname','$dbuser','$nieuwwoord','$nieuwpassword','$dbdate')
							");
 
INSERT zegt het zelf al... Hij voegt een regel toe. Je kan beter een UPDATE gebruiken als je een gebruiker wilt wijzigen:

[SQL]UPDATE tabelnaam SET kolom1='waarde1' WHERE user='gebruikersnaam'[/SQL]
 
Je zult gebruik moeten maken van UPDATE of REPLACE INTO, INSERT voegt een extra rij toe. Als je REPLACE INTO gebruikt zul je ook een paar restricties in de database moeten zetten zodat de database weet wat er vervangen moet worden.

UPDATE is hier het beste denk ik.
 
Heb de code aangepast. Hij veranderd nu niks, hij echo wel van wachtwoord veranderd. Maar hij inserte eerst ook geen user als ik op verander klikte? mvg
PHP:
{
 
				while ($row = mysql_fetch_assoc($query))
				{
						$dbid = $row['id'];
						$dbname = $row['name'];
						$dbuser = $row['user'];
						$dbwoord = $row['woord'];
						$dbdate = $row['date'];
						//kijk of ze overeenkomen?
				if ($user==$dbuser&&$woord==$dbwoord)
					{
						$queryreg = mysql_query
							("
							UPDATE INTO users VALUES 
							('$dbid','$dbname','$dbuser','$nieuwwoord','$nieuwpassword','$dbdate')
							");
						die ("uw wachtwoord is veranderd.");
					}
					else
					{
						die ("Foutief geheimwoord!");
					}
				}
			}
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan