Hvad vil du opnå ved det ?
Du forringer sikkerheden fordi der mangler visse tegn og der er visse tegn som forekommer flere gange.
Det er bare de tegn, som må bruges i saltet, og funktionen returnerer 16 tilfældigt valgte tegn fra alfabetet. At du sætter dem i uorden giver ikke nogen god effekt.
Okay 

 Tak for hjælp, jeg giveer dig lige +1 op for her om 2min når jeg har test det hele og det virker 
 EIDT
Fejl her;
$salt = generateSalt(16); //<--- SHA 512 bruger et 16 tegn langt salt
-  */
 -       
 -       function generateSalt($length) {
 -           $alphabet = './ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
 -           $alphabet_length = strlen($alphabet);
 -           $salt = '';
 -           for ($i = 0; $i < $length; $i++) {
 -               $salt .= $alphabet[rand(0, $alphabet_length - 1)];
 -           }
 -           return $salt;
 -       }
 -       
 -       /*
 -       * Opret bruger på siden og kan har mulighed for alle ting!..
 -       */
 -  
 -      function bruger_opret_siden(){
 -              if ($stmt = $this->mysqli->prepare('SELECT NULL FROM `bruger` WHERE `brugernavn` = ?'))
 -              {
 -                  $stmt->bind_param('s', $brugernavn);
 -                  $brugernavn = $_POST["brugernavn"];
 -                  $stmt->execute();
 -                  $stmt->store_result();
 -                  $count = $stmt->num_rows;
 -                  $stmt->close();
 -                  if($count > 0)
 -                  {
 -                      $user_found = 1;
 -                  }
 -              }
 -              if(!isset($user_found))
 -              {
 -                  if($_POST["pass"] != $_POST["gentag"])
 -                  {
 -                      $errors = 1;
 -                      echo "<li id=\"check_not\">Angive ens password på siden..</li>";
 -                  }
 -                  if(empty($_POST["pass"]) && empty($_POST["gentag"]))
 -                  {
 -                      $errors = 1;
 -                      echo "<li id=\"check_not\">Angive et password på siden..</li>";
 -                  }
 -                  if(empty($_POST["navn"]))
 -                  {
 -                      $errors = 1;
 -                      echo "<li id=\"check_not\">Angive et Fornavn</li>";
 -                  }
 -                  if(empty($_POST["efternavn"]))
 -                  {
 -                      $errors = 1;
 -                      echo "<li id=\"check_not\">Angive et Efternavn</li>";
 -                  }
 -                  if(empty($_POST["land_by"]))
 -                  {
 -                      $errors = 1;
 -                      echo "<li id=\"check_not\">Angive en by</li>";
 -                  }
 -                  if(empty($_POST["hojde"]))
 -                  {
 -                      $errors = 1;
 -                      echo "<li id=\"check_not\">Angive en Højde</li>";
 -                  }
 -                  if(empty($_POST["email"]))
 -                  {
 -                      $errors = 1;
 -                      echo "<li id=\"check_not\">Angive en Email</li>";
 -                  }
 -                  if(empty($_POST["brugernavn"]))
 -                  {
 -                      $errors = 1;
 -                      echo "<li id=\"check_not\">Angive en Højde</li>";
 -                  }
 -                  
 -                  if(!isset($errors))
 -                  {
 -                      $pb = null;
 -                          
 -                      include 'function/class.upload.php';
 -                      $handle = new Upload($_FILES["file"]);
 -                      
 -                      if($handle->uploaded)
 -                      {
 -                          //lidt mere store billeder
 -                          $handle->image_resize = true;
 -                          $handle->image_ratio_y = true;
 -                          $handle->image_x = 220;
 -                          $handle->Process("profil-img/store");
 -                          
 -                          //til profil billede lign..
 -                          $handle->image_resize = true;
 -                          $handle->image_ratio_crop = true;
 -                          $handle->image_y = 115;
 -                          $handle->image_x = 100;
 -                          $handle->Process("profil-img");
 -                          
 -                          //til profil billede lign..
 -                          $handle->image_resize = true;
 -                          $handle->image_ratio_crop = true;
 -                          $handle->image_y = 75;
 -                          $handle->image_x = 75;
 -                          $handle->Process("profil-img/lille");
 -                          $pb = $handle->file_dst_name;            
 -  
 -                      }
 -               
 -                   $password = $_POST["pass"];
 -                   $algorithm = '$6$'; //<--- Dette betyder SHA 512
 -                   $salt = generateSalt(16); //<--- SHA 512 bruger et 16 tegn langt salt
 -               
 -                   $hash = crypt($password, $algorithm . $salt);
 -  
 -                  if ($stmt = $this->mysqli->prepare('INSERT INTO `bruger` 
 -                  (`rank`, `email`, `brugernavn`, `password`, `profilbillede`, `profilbillede_godkendt`, `navn`, `efternavn`, `alder_d`, `alder_m`, `alder_aar`, `status`, `kon`, `seksualitet`, `land_by`, `hojde`) 
 -                  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'))
 -                  {
 -                      
 -                      $stmt->bind_param('issssisssssiiisi', $rank, $email, $brugernavn, $password, $profilbillede, $pb_godkendt, $navn, $efternavn, $alder_d, $alder_m, $alder_aar, $kon, $seksualitet, $partnerstatus, $land_by, $hojde);
 -                      $rank = '1';
 -                      $pb_godkendt = '1';
 -                      $email = $_POST["email"];
 -                      $brugernavn = $_POST["brugernavn"];//C
 -                      $password = $hash;//C
 -                      $profilbillede = $pb;//C
 -                      $navn = $_POST["navn"];
 -                      $efternavn = $_POST["efternavn"];
 -                      $alder_d = $_POST["alder_d"];
 -                      $alder_m = $_POST["alder_m"];
 -                      $alder_aar = $_POST["alder_aar"];
 -                      $kon = $_POST["kon"];
 -                      $seksualitet = $_POST["seksualitet"];
 -                      $partnerstatus = $_POST["partnerstatus"];
 -                      $land_by = $_POST["land_by"];
 -                      $hojde = $_POST["hojde"];
 -                      
 -                      $stmt->execute();
 -                      $stmt->close();
 -                      
 -                      echo "godkendt";
 -                          
 -                      }
 -                      else
 -                      {
 -                          /* Der er opstået en fejl */
 -                          echo 'Der opstod en fejl i erklæringen til ligge i databasen: ' . $mysqli->error;
 -                      }
 -                  }
 -              }
 -              else
 -              {
 -                  echo "<li id=\"check_not\">Dette brugernavn er optaget!!</li>";
 -              }
 -      }
 
over på den side hvor de bliver henter altså functionerne
-  <?php
 -              if(isset($_POST["godkendt_bruger"]))
 -              {
 -                  $pass = $mebe->generateSalt();
 -                  $users = $mebe->bruger_opret_siden();
 -              }
 -              else
 -              {
 -                  echo "<li id=\"check_opret\">Indtast dine oplysninger herunder for at opret en bruger</li>";
 -              }
 -              ?>
 
bare skriver fejl sådan her;
Fatal error: Call to undefined function generateSalt() in /home/jesperbo/public_html/mebe/function/function.php on line 607
Fejl her;
$salt = generateSalt(16); //<--- SHA 512 bruger et 16 tegn langt salt
						
						
						
						
		
							Indlæg senest redigeret d. 16.11.2012 16:16 af Bruger #17136