ben met een pagina bezig om gegevens van een gebruiker verder te laten aanpassen
nu lijkt mooie als ik daar profiel foto laat toevoegen gelijk gekopeld is aan de username

zou iemand hier iets op weten
dit is wat ik heb database table zijn id, username, pasword, email,avatar, geslacht, leeftijd, relatie, woonplaats



 <?php
include('config.php');
?>
<!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" />
        <link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
        <title>Edit my personnal informations</title>
    </head>
    <body>
    	<div class="header">
        	<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Members Area" /></a>
	    </div>
<?php

if(isset($_SESSION['username']))
{
	
	if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['avatar'], $_POST['geslacht'], $_POST['leeftijd'], $_POST['relatie'], $_POST['woonplaats']))
	{
		
		if(get_magic_quotes_gpc())
		{
			$_POST['username'] = stripslashes($_POST['username']);
			$_POST['password'] = stripslashes($_POST['password']);
			$_POST['passverif'] = stripslashes($_POST['passverif']);
			$_POST['email'] = stripslashes($_POST['email']);
			$_POST['avatar'] = stripslashes($_POST['avatar']);
			$_POST['geslacht'] = stripslashes($_POST['geslacht']);
			$_POST['leeftijd'] = stripslashes($_POST['leeftijd']);
			$_POST['relatie'] = stripslashes($_POST['relatie']);
			$_POST['woonplaats'] = stripslashes($_POST['woonplaats']);
		}
				if($_POST['password']==$_POST['passverif'])
		{
			
			if(strlen($_POST['password'])>=6)
			{
				
				if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
				{
					
					$username = mysql_real_escape_string($_POST['username']);
					$password = mysql_real_escape_string($_POST['password']);
					$email = mysql_real_escape_string($_POST['email']);
					$avatar = mysql_real_escape_string($_POST['avatar']);
					$geslacht = mysql_real_escape_string($_POST['geslacht']);
					$leeftijd = mysql_real_escape_string($_POST['leeftijd']);
					$relatie = mysql_real_escape_string($_POST['relatie']);
					$woonplaats = mysql_real_escape_string($_POST['woonplaats']);
					
					$dn = mysql_fetch_array(mysql_query('select count(*) as nb from users where username="'.$username.'"'));
					
					if($dn['nb']==0 or $_POST['username']==$_SESSION['username'])
					{
						
						if(mysql_query('update users set username="'.$username.'", password="'.$password.'", email="'.$email.'", avatar="'.$avatar.'", geslacht="'.$geslacht.'", leeftijd="'.$leeftijd.'", relatie="'.$relatie.'", woonplaats="'.$woonplaats.'" where id="'.mysql_real_escape_string($_SESSION['userid']).'"'))
						{
							
							$form = false;
							
							unset($_SESSION['username'], $_SESSION['userid']);
?>
<div class="message">Uw informatie hebben successfuly bijgewerkt. U moet opnieuw aanmelden.<br />
<a href="connexion.php">Log in</a></div>
<?php
						}
						else
						{
							
							$form = true;
							$message = 'An error occurred while updating your informations.';
						}
					}
					else
					{
						
						$form = true;
						$message = 'The username you want to use is not available, please choose another one.';
					}
				}
				else
				{
					
					$form = true;
					$message = 'The email you entered is not valid.';
				}
			}
			else
			{
				
				$form = true;
				$message = 'Your password must contain at least 6 characters.';
			}
		}
		else
		{
			
			$form = true;
			$message = 'The passwords you entered are not identical.';
		}
	}
	else
	{
		$form = true;
	}
	if($form)
	{
		
		if(isset($message))
		{
			echo '<strong>'.$message.'</strong>';
		}
		
		if(isset($_POST['username'],$_POST['password'],$_POST['email']))
		{
			$pseudo = htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');
			if($_POST['password']==$_POST['passverif'])
			{
				$password = htmlentities($_POST['password'], ENT_QUOTES, 'UTF-8');
			}
			else
			{
				$password = '';
			}
			$email = htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');
			$avatar = htmlentities($_POST['avatar'], ENT_QUOTES, 'UTF-8');
			$geslacht = htmlentities($_POST['geslacht'], ENT_QUOTES, 'UTF-8');
			$leeftijd = htmlentities($_POST['leeftijd'], ENT_QUOTES, 'UTF-8');
			$relatie = htmlentities($_POST['relatie'], ENT_QUOTES, 'UTF-8');
			$woonplaats = htmlentities($_POST['woonplaats'], ENT_QUOTES, 'UTF-8');
		}
		else
		{
			
			$dnn = mysql_fetch_array(mysql_query('select username,password,email,avatar,geslacht,relatie,woonplaats from users where username="'.$_SESSION['username'].'"'));
			$username = htmlentities($dnn['username'], ENT_QUOTES, 'UTF-8');
			$password = htmlentities($dnn['password'], ENT_QUOTES, 'UTF-8');
			$email = htmlentities($dnn['email'], ENT_QUOTES, 'UTF-8');
			$avatar = htmlentities($dnn['avatar'], ENT_QUOTES, 'UTF-8');
			$geslacht = htmlentities($dnn['geslacht'], ENT_QUOTES, 'UTF-8');
			$leeftijd = htmlentities($dnn['leeftijd'], ENT_QUOTES, 'UTF-8');
			$relatie = htmlentities($dnn['relatie'], ENT_QUOTES, 'UTF-8');
			$woonplaats = htmlentities($dnn['woonplaats'], ENT_QUOTES, 'UTF-8');
		}
		
?>
<div class="content">
    <form action="edit_infos.php" method="post">
        U kunt uw informatie bewerken:<br />
        <div class="center">
            <label for="username">Gebruikersnaam :</label><input type="text" name="username" id="username" value="<?php echo $username; ?>" /><br />
            <label for="password">wachtwoord<span class="small">(6 characters min.)</span></label><input type="password" name="password" id="password" value="<?php echo $password; ?>" /><br />
            <label for="passverif">Wachtwoord<span class="small">(verification)</span></label><input type="password" name="passverif" id="passverif" value="<?php echo $password; ?>" /><br />
            <label for="email">Email</label><input type="text" name="email" id="email" value="<?php echo $email; ?>" /><br />
            <label for="avatar">Avatar<span class="small">(optional)</span></label><input type="text" name="avatar" id="avatar" value="<?php echo $avatar; ?>" /><br />
                        <label for="geslacht">man of vrouw :</label><input type="text" name="geslacht" id="geslacht" value="<?php echo $geslacht; ?>" /><br />
                        <label for="leeftijd">U leeftijd :</label><input type="text" name="leeftijd" id="leeftijd" value="<?php echo $leeftijd; ?>" /><br />
                                    <label for="relatie">Relatie status :</label><input type="text" name="relatie" id="relatie" value="<?php echo $relatie; ?>" /><br />
                                                <label for="woonplaats">Woonplaats :</label><input type="text" name="woonplaats" id="woonplaats" value="<?php echo $woonplaats; ?>" /><br />
            <input type="submit" value="Send" />
        </div>
    </form>
</div>
<?php
	}
}
else
{
?>
<div class="message">Om deze pagina te openen , moet u ingelogd zijn ..<br />
<a href="connexion.php">Log in</a></div>
<?php
}
?>
		<div class="foot"><a href="<?php echo $url_home; ?>">Home</a> - </div>
	</body>
</html>


Het is niet verwonderlijk dat deze leeg is, hij staat onderaan.......
onder aan tussen door boven aan geen error zelfde Array()
Waar upload je dan? Dat script is opeens weg? Dan is het niets meer dan logisch dat $_FILES leeg is.

Is het niet even verstandig om even de basis-tutorials op phptuts.nl eerst even door te nemen? Ik denk dat niet echt helemaal door hebt hoe alle functies werken. het is echt een kwestie van logisch nadenken en vooral het weten wat je doet. Alleen maar proberen is niet de juiste insteek.
script heb juist tussen uit gehaald maar die plaats i zo weer terug


[size=xsmall]Toevoeging op 28/04/2015 22:45:25:[/size]

met script en error er is op 3 plaatsen 0,0

[size=xsmall]Toevoeging op 28/04/2015 22:48:09:[/size]

dit is met upload code


<?php
include('config.php');
echo "<pre>".print_r($_FILES,1)."</pre>";
?>
<!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" />
        <link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
        <title>Edit my personnal informations</title>
    </head>
    <body>
        <div class="header">
            <a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Members Area" /></a>
        </div>
<?php
echo "<pre>".print_r($_FILES,1)."</pre>";
if(isset($_SESSION['username']))
{
    
    if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['avatar'], $_POST['geslacht'], $_POST['leeftijd'], $_POST['relatie'], $_POST['woonplaats']))
   {
	   $tmp_name = $_FILES["avatar"]["tmp_name"];
        $ext= pathinfo($tmp_name);
        $upload = move_uploaded_file($tmp_name, "images/".$dnn['username'].".".$ext);
        if($upload) {
           // gelukt, toon een bericht
               echo "Uw bestand ".$_FILES['avatar']['tmp_name']." is geupload<br /><br /><img src='images/".$_FILES['avatar']['tmp_name']."' align='left'>Url: <input type='text' value='images/".$_FILES['avatar']['tmp_name']."'>";
} else {
           // niet gelukt, toon een bericht, of kijk eens naar $_FILES['avatar']['error'];
               echo "Het uploaden is mislukt"; 
}

        
        if(get_magic_quotes_gpc())
        {
            $_POST['username'] = stripslashes($_POST['username']);
            $_POST['password'] = stripslashes($_POST['password']);
            $_POST['passverif'] = stripslashes($_POST['passverif']);
            $_POST['email'] = stripslashes($_POST['email']);
            $_POST['avatar'] = stripslashes($_POST['avatar']);
            $_POST['geslacht'] = stripslashes($_POST['geslacht']);
            $_POST['leeftijd'] = stripslashes($_POST['leeftijd']);
            $_POST['relatie'] = stripslashes($_POST['relatie']);
            $_POST['woonplaats'] = stripslashes($_POST['woonplaats']);
        }
                if($_POST['password']==$_POST['passverif'])
        {
            
            if(strlen($_POST['password'])>=6)
            {
                
                if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
                {
                    
                    $username = mysql_real_escape_string($_POST['username']);
                    $password = mysql_real_escape_string($_POST['password']);
                    $email = mysql_real_escape_string($_POST['email']);
                    $avatar = mysql_real_escape_string($_POST['avatar']);
                    $geslacht = mysql_real_escape_string($_POST['geslacht']);
                    $leeftijd = mysql_real_escape_string($_POST['leeftijd']);
                    $relatie = mysql_real_escape_string($_POST['relatie']);
                    $woonplaats = mysql_real_escape_string($_POST['woonplaats']);
                    
                    $dn = mysql_fetch_array(mysql_query('select count(*) as nb from users where username="'.$username.'"'));
                    
                    if($dn['nb']==0 or $_POST['username']==$_SESSION['username'])
                    {
                        
                        if(mysql_query('update users set username="'.$username.'", password="'.$password.'", email="'.$email.'", avatar="'.$avatar.'", geslacht="'.$geslacht.'", leeftijd="'.$leeftijd.'", relatie="'.$relatie.'", woonplaats="'.$woonplaats.'" where id="'.mysql_real_escape_string($_SESSION['userid']).'"'))
                        {
                            
                            $form = false;
                            
                            unset($_SESSION['username'], $_SESSION['userid']);
?>
<div class="message">Uw informatie hebben successfuly bijgewerkt. U moet opnieuw aanmelden.<br />
<a href="connexion.php">Log in</a></div>
<?php
                        }
                        else
                        {
                            
                            $form = true;
                            $message = 'An error occurred while updating your informations.';
                        }
                    }
                    else
                    {
                        
                        $form = true;
                        $message = 'The username you want to use is not available, please choose another one.';
                    }
                }
                else
                {
                    
                    $form = true;
                    $message = 'The email you entered is not valid.';
                }
            }
            else
            {
                
                $form = true;
                $message = 'Your password must contain at least 6 characters.';
            }
        }
        else
        {
            
            $form = true;
            $message = 'The passwords you entered are not identical.';
        }
    }
    else
    {
        $form = true;
    }
    if($form)
    {
        
        if(isset($message))
        {
            echo '<strong>'.$message.'</strong>';
        }
        
        if(isset($_POST['username'],$_POST['password'],$_POST['email']))
        {
            $pseudo = htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');
            if($_POST['password']==$_POST['passverif'])
            {
                $password = htmlentities($_POST['password'], ENT_QUOTES, 'UTF-8');
            }
            else
            {
                $password = '';
            }
            $email = htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');
            $avatar = htmlentities($_POST['avatar'], ENT_QUOTES, 'UTF-8');
            $geslacht = htmlentities($_POST['geslacht'], ENT_QUOTES, 'UTF-8');
            $leeftijd = htmlentities($_POST['leeftijd'], ENT_QUOTES, 'UTF-8');
            $relatie = htmlentities($_POST['relatie'], ENT_QUOTES, 'UTF-8');
            $woonplaats = htmlentities($_POST['woonplaats'], ENT_QUOTES, 'UTF-8');
        }
        else
        {
            
            $dnn = mysql_fetch_array(mysql_query('select username,password,email,avatar,geslacht,relatie,woonplaats from users where username="'.$_SESSION['username'].'"'));
            $username = htmlentities($dnn['username'], ENT_QUOTES, 'UTF-8');
            $password = htmlentities($dnn['password'], ENT_QUOTES, 'UTF-8');
            $email = htmlentities($dnn['email'], ENT_QUOTES, 'UTF-8');
            $avatar = htmlentities($dnn['avatar'], ENT_QUOTES, 'UTF-8');
            $geslacht = htmlentities($dnn['geslacht'], ENT_QUOTES, 'UTF-8');
            $leeftijd = htmlentities($dnn['leeftijd'], ENT_QUOTES, 'UTF-8');
            $relatie = htmlentities($dnn['relatie'], ENT_QUOTES, 'UTF-8');
            $woonplaats = htmlentities($dnn['woonplaats'], ENT_QUOTES, 'UTF-8');
        }
        
?>
<div class="content">
    <form action="edit_infos.php" method="post" >
        U kunt uw informatie bewerken:<br />
        <div class="center">
            <label for="username">Gebruikersnaam :</label><input type="text" name="username" id="username" value="<?php echo $username; ?>" /><br />
            <label for="password">wachtwoord<span class="small">(6 characters min.)</span></label><input type="password" name="password" id="password" value="<?php echo $password; ?>" /><br />
            <label for="passverif">Wachtwoord<span class="small">(verification)</span></label><input type="password" name="passverif" id="passverif" value="<?php echo $password; ?>" /><br />
            <label for="email">Email</label><input type="text" name="email" id="email" value="<?php echo $email; ?>" /><br />
            <label for="avatar">Avatar<span class="small">(optional)</span></label><input type="file" name="avatar" id="avatar" value="<?php echo $avatar; ?>" /><br />
                        <label for="geslacht">man of vrouw :</label><input type="text" name="geslacht" id="geslacht" value="<?php echo $geslacht; ?>" /><br />
                        <label for="leeftijd">U leeftijd :</label><input type="text" name="leeftijd" id="leeftijd" value="<?php echo $leeftijd; ?>" /><br />
                                    <label for="relatie">Relatie status :</label><input type="text" name="relatie" id="relatie" value="<?php echo $relatie; ?>" /><br />
                                                <label for="woonplaats">Woonplaats :</label><input type="text" name="woonplaats" id="woonplaats" value="<?php echo $woonplaats; ?>" /><br />
            <input type="submit" value="Send" />
        </div>
    </form>
</div>
<?php
    }
}
else
{
?>
<div class="message">Om deze pagina te openen , moet u ingelogd zijn ..<br />
<a href="connexion.php">Log in</a></div>
<?php
}
?>
        <div class="foot"><a href="<?php echo $url_home; ?>">Home</a> - </div>
        <?php
echo "<pre>".print_r($_FILES,1)."</pre>";
?>
    </body>
</html>
Ik vind het probleem nu behoorlijk van-de-hak-op-de-tak springen dat ik er eerlijk gezegd geen touw meer aan kan vastknopen.
Ik zou zeggen, probeer eerst inzicht te krijgen in je code en de werking ervan. Plaats commentaarcode, en zorg dat je weet wat het doet.

Zet dan de upload erin, voeg foutafhandeling toe, kijk naar de $_FILES array. vergeet niet na elke aanpassingen even te kijken of alles naar behoren werkt. Tussentijds debuggen door variabelen te echoén is zeker niet overbodig en helpt je zeker met het begrijpen van je code.

Ik wens je veel succes, en mocht je verder nog vragen hebben, dan horen we die graag!
John breedveld op 28/04/2015 19:12:33

in iedergval als ik deze kewstie enctype="multipart/form-data" in form mee neem worden de gevens niet bij gewerkt


Ik denk toch dat het hier zit het probleem als de array $_FILES leeg blijft.
alles wordt netjes de file in domein wordt niet bij gezet
John breedveld op 29/04/2015 09:00:34

alles wordt netjes de file in domein wordt niet bij gezet

Wat bedoel je hiermee?


Waarom sla je het wachtwoord zonder encrypte op?
Waarom al die variabelen aanmaken, zoals op regel 46-53?
Daarna ga je pas wat controles doen.
Verder laat je volgens mij maar 1 foutmelding tegelijk zien; waarom bezoeker niet in 1x alle fouten tonen (ongeldige usernaam, mailadres, te kort wachtwoord)?
Als je lappen code plaatst waarvan het belangrijkste ontbreekt, dan is het lastig te weten hoe jij je code aanpast met het uploadscript. Ik wil je daarom vriendelijk vragen om zo duidelijk en concreet mogelijk te zijn.

Ook raad ik aan om wat duidelijker te schrijven. Gebruik desnoods een spellingscontrole of laat het iemand even doorlezen voordat je het plaatst. Op die manier wordt het voor ons makkelijker om je te begrijpen en daarmee ook te helpen.
het is compleet script helaas weet ik niet veel van scripten en beveilingen en hoe een script totaal goed te beveiligen

Reageren