Avatar billede ibandersson Juniormester
09. juni 2014 - 10:09 Der er 21 kommentarer og
1 løsning

hjælp til login skift, tag en kig på det og kom med et bud af evt.fejl

Hej
Jeg har fået et login script fra nettet.
Ham der laver det viser at det virker og gennemgår det.
Jeg har taget kileteksten og ville bruge det, og betale for det når det funker.

men der er 2 problemer
1 den tjekker ikke oprettelse af navn mail osv.

som jo er hoved formålet.

2 den reagerer ikke ved tryk på linket til terms.
en mindre irriterende del, men også en indikation på at der er noget der ikke virker.

JEG HAR PRØVET AT KONTAKT PRODUKCENTEN, MEN INGEN FEETBACK.
NEJ JEG ER IKKE INTERRESERET I ANDET.

bARE FÅ DENNE TIL AT VIRKE.

hoved scriptet er her
Det er ligesom den ikke "kommer ind" i scriptet

tillægs filer er
message.php
ajax.js
main.js


-------------------------------hovedscript signup.php---
<?php
session_start();
// If user is logged in, header them away
if(isset($_SESSION["username"])){
header("location: message.php?msg=NO to that weenis");
exit();
}
?>
<?php
// Ajax calls this NAME CHECK code to execute
if(isset($_POST["usernamecheck"])){
include_once("php_includes/conn_mysqli.php");
$username = preg_replace('#[^a-z0-9]#i', '', $_POST['usernamecheck']);
$sql = "SELECT id FROM users WHERE username='$username' LIMIT 1";
$query = mysqli_query($conn_mysqli, $sql);
$uname_check = mysqli_num_rows($query);
if (strlen($username) < 3 || strlen($username) > 16) {
echo '<strong style="color:#F00;">3 - 16 characters please</strong>';
exit();
}
if (is_numeric($username[0])) {
echo '<strong style="color:#F00;">Usernames must begin with a letter</strong>';
exit();
}
if ($uname_check < 1) {
echo '<strong style="color:#009900;">' . $username . ' is OK</strong>';
exit();
} else {
echo '<strong style="color:#F00;">' . $username . ' is taken</strong>';
exit();
}
}
?><?php
// Ajax calls this REGISTRATION code to execute
if(isset($_POST["u"])){
// CONNECT TO THE DATABASE
include_once("php_includes/conn_mysqli.php");
// GATHER THE POSTED DATA INTO LOCAL VARIABLES
$u = preg_replace('#[^a-z0-9]#i', '', $_POST['u']);
$e = mysqli_real_escape_string($conn_mysqli, $_POST['e']);
$p = $_POST['p'];
$g = preg_replace('#[^a-z]#', '', $_POST['g']);
$c = preg_replace('#[^a-z ]#i', '', $_POST['c']);
// GET USER IP ADDRESS
$ip = preg_replace('#[^0-9.]#', '', getenv('REMOTE_ADDR'));
// DUPLICATE DATA CHECKS FOR USERNAME AND EMAIL
$sql = "SELECT id FROM users WHERE username='$u' LIMIT 1";
$query = mysqli_query($conn_mysqli, $sql);
$u_check = mysqli_num_rows($query);
// -------------------------------------------
$sql = "SELECT id FROM users WHERE email='$e' LIMIT 1";
$query = mysqli_query($conn_mysqli, $sql);
$e_check = mysqli_num_rows($query);
// FORM DATA ERROR HANDLING
if($u == "" || $e == "" || $p == "" || $g == "" || $c == ""){
echo "The form submission is missing values.";
exit();
} else if ($u_check > 0){
echo "The username you entered is alreay taken";
exit();
} else if ($e_check > 0){
echo "That email address is already in use in the system";
exit();
} else if (strlen($u) < 3 || strlen($u) > 16) {
echo "Username must be between 3 and 16 characters";
exit();
} else if (is_numeric($u[0])) {
echo 'Username cannot begin with a number';
exit();
} else {
// END FORM DATA ERROR HANDLING
// Begin Insertion of data into the database
// Hash the password and apply your own mysterious unique salt
$cryptpass = crypt($p);
include_once ("php_includes/randStrGen.php");
$p_hash = randStrGen(20)."$cryptpass".randStrGen(20);
// Add user info into the database table for the main site table
$sql = "INSERT INTO users (username, email, password, gender, country, ip, signup, lastlogin, notescheck)
VALUES('$u','$e','$p_hash','$g','$c','$ip',now(),now(),now())";
$query = mysqli_query($conn_mysqli, $sql);
$uid = mysqli_insert_id($conn_mysqli);
// Establish their row in the useroptions table
$sql = "INSERT INTO useroptions (id, username, background) VALUES ('$uid','$u','original')";
$query = mysqli_query($conn_mysqli, $sql);
// Create directory(folder) to hold each user's files(pics, MP3s, etc.)
if (!file_exists("user/$u")) {
mkdir("user/$u", 0755);
}
// Email the user their activation link
$to = "$e";
$from = "info@mydrop.dk";
$subject = 'Mydrop Account Activation';
$message = '<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Mydrop Message</title></head><body style="margin:0px; font-family:Tahoma, Geneva, sans-serif;"><div style="padding:10px; background:#333; font-size:24px; color:#CCC;"><a href="http://www.Mydrop.dk"><img src="http://www.Mydrop.dk/images/logo.png" width="36" height="30" alt="Mydrop" style="border:none; float:left;"></a>Mydrop Account Activation</div><div style="padding:24px; font-size:17px;">Hello '.$u.',<br /><br />Click the link below to activate your account when ready:<br /><br /><a href="http://www.Mydrop.dk/activation.php?id='.$uid.'&u='.$u.'&e='.$e.'&p='.$p_hash.'">Click here to activate your account now</a><br /><br />Login after successful activation using your:<br />* E-mail Address: <b>'.$e.'</b></div></body></html>';
$headers = "From: $from\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
mail($to, $subject, $message, $headers);
echo "signup_success";
exit();
}
exit();
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Sign Up</title>
<!--<link rel="icon" href="favicon.ico" type="image/x-icon">-->
<link rel="icon" href="images/icon2.gif" type="image/gif">
<link rel="stylesheet" href="style/style.css">
<style type="text/css">
#signupform{
margin-top:24px;
margin-left: 150px;
}
#signupform > div {
margin-top: 12px;
}
#signupform > input,select {
width: 200px;
padding: 3px;
background: #F3F9DD;
}
#signupbtn {
font-size:18px;
padding: 12px;
}
#terms {
border:#CCC 1px solid;
background: #F5F5F5;
padding: 12px;
}
</style>
<script src="js/main.js"></script>
<script src="js/ajax.js"></script>
<script>
function restrict(elem){
var tf = _(elem);
var rx = new RegExp;
if(elem == "email"){
rx = /[' "]/gi;
} else if(elem == "username"){
rx = /[^a-z0-9]/gi;
}
tf.value = tf.value.replace(rx, "");
}
function emptyElement(x){
_(x).innerHTML = "";
}
function checkusername(){
var u = _("username").value;
if(u != ""){
_("unamestatus").innerHTML = 'checking ...';
var ajax = ajaxObj("POST", "signupuser.php");
ajax.onreadystatechange = function() {
if(ajaxReturn(ajax) == true) {
_("unamestatus").innerHTML = ajax.responseText;
}
}
ajax.send("usernamecheck="+u);
}
}
function signup(){
var u = _("username").value;
var e = _("email").value;
var p1 = _("pass1").value;
var p2 = _("pass2").value;
var c = _("country").value;
var g = _("gender").value;
var status = _("status");
if(u == "" || e == "" || p1 == "" || p2 == "" || c == "" || g == ""){
status.innerHTML = "Fill out all of the form data";
} else if(p1 != p2){
status.innerHTML = "Your password fields do not match";
} else if( _("terms").style.display == "none"){
status.innerHTML = "Please view the terms of use";
} else {
_("signupbtn").style.display = "none";
status.innerHTML = 'please wait ...';
var ajax = ajaxObj("POST", "signupuser.php");
ajax.onreadystatechange = function() {
if(ajaxReturn(ajax) == true) {
if(ajax.responseText != "signup_success"){
status.innerHTML = ajax.responseText;
_("signupbtn").style.display = "block";
} else {
window.scrollTo(0,0);
_("signupform").innerHTML = "OK "+u+", check your email inbox and junk mail box at <u>"+e+"</u> in a moment to complete the sign up process by activating your account. You will not be able to do anything on the site until you successfully activate your account.";
}
}
}
ajax.send("u="+u+"&e="+e+"&p="+p1+"&c="+c+"&g="+g);
}
}
function openTerms(){
_("terms").style.display = "block";
emptyElement("status");
}
/*function addEvents(){
_("elemID").addEventListener("click", func, false);
}
window.onload = addEvents;*/
</script>
</head>
<body>
<?php include_once("template_pagetop.php"); ?>
<div id="pagemiddle">
<h3>Sign Up Here</h3>
<form name="signupform" id="signupform" onsubmit="return false;">
<div>Username: </div>
<input id="username" type="text" onblur="checkusername()" onkeyup="restrict('username')" maxlength="16">
<span id="unamestatus"></span>
<div>Email Address:</div>
<input id="email" type="text" onfocus="emptyElement('status')" onkeyup="restrict('email')" maxlength="88">
<div>Create Password:</div>
<input id="pass1" type="password" onfocus="emptyElement('status')" maxlength="16">
<div>Confirm Password:</div>
<input id="pass2" type="password" onfocus="emptyElement('status')" maxlength="16">
<div>Gender:</div>
<select id="gender" onfocus="emptyElement('status')">
<option value=""></option>
<option value="m">Male</option>
<option value="f">Female</option>
</select>
<div>Country:</div>
<select id="country" onfocus="emptyElement('status')">
<?php include_once("php_includes/template_country_list.php"); ?>
</select>
<div>
<a href="#" onclick="return false" onmousedown="openTerms()">
View the Terms Of Use
</a>
</div>
<div id="terms" style="display:none;">
<h3>Web Intersect Terms Of Use</h3>
<p>1. Play nice here.</p>
<p>2. Take a bath before you visit.</p>
<p>3. Brush your teeth before bed.</p>
</div>
<br /><br />
<button id="signupbtn" onclick="signup()">Create Account</button>
<span id="status"></span>
</form>
</div>
<?php include_once("template_pagebottom.php"); ?>
</body>
</html>
</body>
</html>

-------------------hovedscript slut----

-------------------ajax.js-------------
function ajaxObj( meth, url ) {
    var x = new XMLHttpRequest();
    x.open( meth, url, true );
    x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    return x;
}
function ajaxReturn(x){
    if(x.readyState == 4 && x.status == 200){
        return true;   
    }
}
----------------------------------------------------------
---------------------main.js------------------------------
function _(x) {

    return document.GetElementBtId(x);
   
}
----------------------------------------------------------
Avatar billede erikjacobsen Ekspert
09. juni 2014 - 11:12 #1
Der er sikkert mange ting "galt" - eller uhensigtsmæssigt. Men det er jo ret beset noget du skal lade leverandøren ordne. Og drop ham, hvis han ikke kan.

En enkelt ting:

  return document.GetElementBtId(x);

Der er li'som ikke noget, der hedder GetElementBtId - men noget der hedder GetElementById - og det er formentlig denne der menes.
Avatar billede erikjacobsen Ekspert
09. juni 2014 - 11:14 #2
Og så gjorde jeg det igen: getElementById
Avatar billede ibandersson Juniormester
09. juni 2014 - 17:09 #3
bingo, det var sku godt, det var det der var galt, tak for det....skriv svar
Avatar billede ibandersson Juniormester
09. juni 2014 - 17:22 #4
måske du lige kunne tjekke denne linie ?

if($u == "" || $e == "" || $p == "" || $g == "" || $c == ""){
echo "The form submission is missing values.";
exit();

jeg får fejlen
"The form submission is missing values.";

;-)
Avatar billede ibandersson Juniormester
10. juni 2014 - 06:30 #5
siden hvor det ligger er
http://www.mydrop.dk/signupuser.php

hvis jeg ikke udfylder alle felter får jeg den rigtige fejl melding, men udfylder jeg alle felter får jeg en melding om at den mangler "values"

Det fatter jeg ikke
Avatar billede ibandersson Juniormester
10. juni 2014 - 06:33 #6
ok jeg så ikke lige det der med poing systemet sorry.

"Jeg samler slet ikke på point, tak."

er ok, men du skriver også du kan lide sværere problemer, og den er svær "for mig" den her...

smiler
Avatar billede erikjacobsen Ekspert
11. juni 2014 - 10:04 #7
Jeg har en kopi kørende, som ikke giver den fejl. Mon du har præcis den samme kode kørende?
Avatar billede ibandersson Juniormester
14. juni 2014 - 12:06 #8
ok tak for din indsats. Den kode jeg sendte i indlægget er den jeg bruger. jeg har jo rettet den der fejl i main.js, og troede nu var lykken gjort.

Ja fatter jeg ingenting....Det er som om "den" ikke vil teste på min mail adresse jeg bruger mod den adresse der evt. er i DB. (der er så ingen pt. det kan måske være det der er fejl. At den må have noget at arbejde op imod.)

hvilken browser tester du i ??


jeg er næsten skallet, efter at lede efter fejl.
Avatar billede erikjacobsen Ekspert
14. juni 2014 - 20:29 #9
Ingen grund til at hive håret ud. Og det er lige meget hvilken browser.

Jeg er stadig i tvivl om du faktisk kører den viste kode.
Avatar billede ibandersson Juniormester
15. juni 2014 - 11:07 #10
Ja så er der jo kun en ting at gøre, det er at paste din kode ind her, så tester jeg den. og håber det virker her ved mig også
Avatar billede erikjacobsen Ekspert
16. juni 2014 - 09:30 #11
Det er dit problem, og du skal gøre arbejdet, så du kan jo vise præcist hvilken kode, der kører på dit site.
Avatar billede ibandersson Juniormester
21. juni 2014 - 13:14 #12
den kode der køre på min site er den der er foroven og det er den der ikke virker, og jeg ved ikke hvad jeg skal gøre for at få lortet til at virke. fatter ikke at den køre ved dig, jeg bruger både eksplorer og chrom men lige meget hjælper det. på mydrop.dk er der også noget andet css3 der pludselig er stoppet med at virker. det er den første knap hvor der er 4 link, når man holder musen henover SKULLE den dreje link billederne rundt. Det gjorde den i starten men nu ikke længere.
Avatar billede ibandersson Juniormester
27. juni 2014 - 20:18 #13
<?php
session_start();
// If user is logged in, header them away
if(isset($_SESSION["username"])){
header("location: message.php?msg=NO to that weenis");
exit();
}
?>
<?php
// Ajax calls this NAME CHECK code to execute
if(isset($_POST["usernamecheck"])){
include_once("php_includes/conn_mysqli.php");
$username = preg_replace('#[^a-z0-9]#i', '', $_POST['usernamecheck']);
$sql = "SELECT id FROM users WHERE username='$username' LIMIT 1";
$query = mysqli_query($conn_mysqli, $sql);
$uname_check = mysqli_num_rows($query);
if (strlen($username) < 3 || strlen($username) > 16) {
echo '<strong style="color:#F00;">3 - 16 characters please</strong>';
exit();
}
if (is_numeric($username[0])) {
echo '<strong style="color:#F00;">Usernames must begin with a letter</strong>';
exit();
}
if ($uname_check < 1) {
echo '<strong style="color:#009900;">' . $username . ' is OK</strong>';
exit();
} else {
echo '<strong style="color:#F00;">' . $username . ' is taken</strong>';
exit();
}
}
?><?php
// Ajax calls this REGISTRATION code to execute
if(isset($_POST["u"])){
// CONNECT TO THE DATABASE
include_once("php_includes/conn_mysqli.php");
// GATHER THE POSTED DATA INTO LOCAL VARIABLES
$u = preg_replace('#[^a-z0-9]#i', '', $_POST['u']);
$e = mysqli_real_escape_string($conn_mysqli, $_POST['e']);
$p = $_POST['p'];
$g = preg_replace('#[^a-z]#', '', $_POST['g']);
$c = preg_replace('#[^a-z ]#i', '', $_POST['c']);
// GET USER IP ADDRESS
$ip = preg_replace('#[^0-9.]#', '', getenv('REMOTE_ADDR'));
// DUPLICATE DATA CHECKS FOR USERNAME AND EMAIL
$sql = "SELECT id FROM users WHERE username='$u' LIMIT 1";
$query = mysqli_query($conn_mysqli, $sql);
$u_check = mysqli_num_rows($query);
// -------------------------------------------
$sql = "SELECT id FROM users WHERE email='$e' LIMIT 1";
$query = mysqli_query($conn_mysqli, $sql);
$e_check = mysqli_num_rows($query);
// FORM DATA ERROR HANDLING
if($u == "" || $e == "" || $p == "" || $g == "" || $c == ""){
echo "The form submission is missing values.";
echo $u;
echo $e;
echo $p;
echo $g;
echo $c;
exit();
} else if ($u_check > 0){
echo "The username you entered is alreay taken";
exit();
} else if ($e_check > 0){
echo "That email address is already in use in the system";
exit();
} else if (strlen($u) < 3 || strlen($u) > 16) {
echo "Username must be between 3 and 16 characters";
exit();
} else if (is_numeric($u[0])) {
echo 'Username cannot begin with a number';
exit();
} else {
// END FORM DATA ERROR HANDLING
// Begin Insertion of data into the database
// Hash the password and apply your own mysterious unique salt
$cryptpass = crypt($p);
include_once ("php_includes/randStrGen.php");
$p_hash = randStrGen(20)."$cryptpass".randStrGen(20);
// Add user info into the database table for the main site table
$sql = "INSERT INTO users (username, email, password, gender, country, ip, signup, lastlogin, notescheck)
VALUES('$u','$e','$p_hash','$g','$c','$ip',now(),now(),now())";
$query = mysqli_query($conn_mysqli, $sql);
$uid = mysqli_insert_id($conn_mysqli);
// Establish their row in the useroptions table
$sql = "INSERT INTO useroptions (id, username, background) VALUES ('$uid','$u','original')";
$query = mysqli_query($conn_mysqli, $sql);
// Create directory(folder) to hold each user's files(pics, MP3s, etc.)
if (!file_exists("user/$u")) {
mkdir("user/$u", 0755);
}
// Email the user their activation link
$to = "$e";
$from = "info@mydrop.dk";
$subject = 'Mydrop Account Activation';
$message = '<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Mydrop Message</title></head><body style="margin:0px; font-family:Tahoma, Geneva, sans-serif;"><div style="padding:10px; background:#333; font-size:24px; color:#CCC;"><a href="http://www.Mydrop.dk"><img src="http://www.Mydrop.dk/images/logo.png" width="36" height="30" alt="Mydrop" style="border:none; float:left;"></a>Mydrop Account Activation</div><div style="padding:24px; font-size:17px;">Hello '.$u.',<br /><br />Click the link below to activate your account when ready:<br /><br /><a href="http://www.Mydrop.dk/activation.php?id='.$uid.'&amp;u='.$u.'&amp;e='.$e.'&amp;p='.$p_hash.'">Click here to activate your account now</a><br /><br />Login after successful activation using your:<br />* E-mail Address: <b>'.$e.'</b></div></body></html>';
$headers = "From: $from\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
mail($to, $subject, $message, $headers);
echo "signup_success";
exit();
}
exit();
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Sign Up</title>
<!--<link rel="icon" href="favicon.ico" type="image/x-icon">-->
<link rel="icon" href="images/icon2.gif" type="image/gif">
<link rel="stylesheet" href="style/style.css">
<style type="text/css">
#signupform{
margin-top:24px;
margin-left: 150px;
}
#signupform > div {
margin-top: 12px;
}
#signupform > input,select {
width: 200px;
padding: 3px;
background: #F3F9DD;
}
#signupbtn {
font-size:18px;
padding: 12px;
}
#terms {
border:#CCC 1px solid;
background: #F5F5F5;
padding: 12px;
}
</style>
<script src="js/main.js"></script>
<script src="js/ajax.js"></script>
<script>
function restrict(elem){
var tf = _(elem);
var rx = new RegExp;
if(elem == "email"){
rx = /[' "]/gi;
} else if(elem == "username"){
rx = /[^a-z0-9]/gi;
}
tf.value = tf.value.replace(rx, "");
}
function emptyElement(x){
_(x).innerHTML = "";
}
function checkusername(){
var u = _("username").value;
if(u != ""){
_("unamestatus").innerHTML = 'checking ...';
var ajax = ajaxObj("POST", "signupuser.php");
ajax.onreadystatechange = function() {
if(ajaxReturn(ajax) == true) {
_("unamestatus").innerHTML = ajax.responseText;
}
}
ajax.send("usernamecheck="+u);
}
}
function signup(){
var u = _("username").value;
var e = _("email").value;
var p1 = _("pass1").value;
var p2 = _("pass2").value;
var c = _("country").value;
var g = _("gender").value;
var status = _("status");
if(u == "" || e == "" || p1 == "" || p2 == "" || c == "" || g == ""){
status.innerHTML = "Fill out all of the form data";
} else if(p1 != p2){
status.innerHTML = "Your password fields do not match";
} else if( _("terms").style.display == "none"){
status.innerHTML = "Please view the terms of use";
} else {
_("signupbtn").style.display = "none";
status.innerHTML = 'please wait ...';
var ajax = ajaxObj("POST", "signupuser.php");
ajax.onreadystatechange = function() {
if(ajaxReturn(ajax) == true) {
if(ajax.responseText != "signup_success"){
status.innerHTML = ajax.responseText;
_("signupbtn").style.display = "block";
} else {
window.scrollTo(0,0);
_("signupform").innerHTML = "OK "+u+", check your email inbox and junk mail box at <u>"+e+"</u> in a moment to complete the sign up process by activating your account. You will not be able to do anything on the site until you successfully activate your account.";
}
}
}
ajax.send("u="+u+"&amp;e="+e+"&amp;p="+p1+"&amp;c="+c+"&amp;g="+g);
}
}
function openTerms(){
_("terms").style.display = "block";
emptyElement("status");
}
/*function addEvents(){
_("elemID").addEventListener("click", func, false);
}
window.onload = addEvents;*/
</script>
</head>
<body>
<?php include_once("template_pagetop.php"); ?>
<div id="pagemiddle">
<h3>Sign Up Here</h3>
<form name="signupform" id="signupform" onsubmit="return false;">
<div>Username: </div>
<input id="username" type="text" onblur="checkusername()" onkeyup="restrict('username')" maxlength="16">
<span id="unamestatus"></span>
<div>Email Address:</div>
<input id="email" type="text" onfocus="emptyElement('status')" onkeyup="restrict('email')" maxlength="88">
<div>Create Password:</div>
<input id="pass1" type="password" onfocus="emptyElement('status')" maxlength="16">
<div>Confirm Password:</div>
<input id="pass2" type="password" onfocus="emptyElement('status')" maxlength="16">
<div>Gender:</div>
<select id="gender" onfocus="emptyElement('status')">
<option value=""></option>
<option value="m">Male</option>
<option value="f">Female</option>
</select>
<div>Country:</div>
<select id="country" onfocus="emptyElement('status')">
<?php include_once("php_includes/template_country_list.php"); ?>
</select>
<div>
<a href="#" onclick="return false" onmousedown="openTerms()">
View the Terms Of Use
</a>
</div>
<div id="terms" style="display:none;">
<h3>Web Intersect Terms Of Use</h3>
<p>1. Play nice here.</p>
<p>2. Take a bath before you visit.</p>
<p>3. Brush your teeth before bed.</p>
</div>
<br /><br />
<button id="signupbtn" onclick="signup()">Create Account</button>
<span id="status"></span>
</form>
</div>
<?php include_once("template_pagebottom.php"); ?>
</body>
</html>
</body>
</html>
Avatar billede ibandersson Juniormester
29. juni 2014 - 15:28 #14
så nu kom jeg da lidt tættere på. nu virker koden så den skriver i DB, men kommer med disse fejl 20 gange
Warning: array_rand() expects parameter 1 to be array, null given in /var/www/www.mydrop.dk/www/php_includes/randStrGen.php on line 7

Warning: array_rand() expects parameter 1 to be array, null given in /var/www/www.mydrop.dk/www/php_includes/randStrGen.php on line 7

og et singup succes til slut

og den skriver ikke at der er sendt en mail.
Avatar billede erikjacobsen Ekspert
29. juni 2014 - 15:36 #15
Jeg har ikke lige haft tid til at kigge på det siden i fredags. Men du skriver du er kommet længere...?

Der er ingen array_rand i den du har vist.
Avatar billede ibandersson Juniormester
29. juni 2014 - 15:51 #16
Ja jeg mener at jeg nu får den til at skrive i DB og jeg får en mail i min boks.

koden kalder en randStrGen.php
// Hash the password and apply your own mysterious unique salt
$cryptpass = crypt($p);
include_once ("php_includes/randStrGen.php");
$p_hash = randStrGen(20)."$cryptpass".randStrGen(20);

den skriver 20 gange denne linie:
Warning: array_rand() expects parameter 1 to be array, null given
in /var/www/www.mydrop.dk/www/php_includes/randStrGen.php on line 7

randStrGen.php koden ser sådan ud:
<?php
function randStrGen($len){
    $result ="";
    $chars = "abcdefghijklmnopqrstuvwxyz0123456789$$$$$$$111111";
    $chararray = str_split($chars);
      for ($i = 0; $i < $len; $i++){
        $randItem = array_rand($charArray); 
        $result .= "".$charArray[$randItem];
      }
    return $result;
}
?>
Avatar billede ibandersson Juniormester
29. juni 2014 - 15:52 #17
hvad mener den med at den er null og ikke 1 som den åbenbart forventer
Avatar billede ibandersson Juniormester
29. juni 2014 - 16:00 #18
nå fejlen funder, der var stavet med lille a i $chararray =
og det skulle være stort A i charArray
str_split($chars);
      for ($i = 0; $i < $len; $i++){
        $randItem = array_rand($charArray);
        $result .= "".$charArray[$randItem];

nu virker  det, tak for hjælpen, jeg vender nok frygtlig tilbage en anden gang. hilsen Ib
Avatar billede ibandersson Juniormester
29. juni 2014 - 16:00 #19
svar
Avatar billede erikjacobsen Ekspert
29. juni 2014 - 16:01 #20
Der er en smule forskel på $chararray og $charArray
Avatar billede erikjacobsen Ekspert
29. juni 2014 - 16:01 #21
Ah, du så den først ;)
Avatar billede ibandersson Juniormester
22. september 2014 - 08:03 #22
afsluttet
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester