Avatar billede rix Novice
04. januar 2010 - 03:05 Der er 9 kommentarer og
1 løsning

hjælp den siger erro last_login in row1

hej alle sammen jeg har fundet en udmærket login system som opretter en tabel i MySQL men når jeg prøver at få en ny kode ind siger den last_login ind row1 aner ikke hvad den mener men jeg tror at jeg ved hvor i koden den går galt
<?

//prevents caching
header("Expires: Sat, 01 Jan 2000 00:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: post-check=0, pre-check=0",false);
session_cache_limiter();

session_start();

//require the config file
require ("../config.php");
require ("../functions.php");

if ($page == ""){$page = 1;}
if ($max_results == ""){$max_results = 5;}
   
   
//check required fields
if (($_POST[username] == ""))
{
    echo "The Username Field can not be left blank.  Please <a href=\"adminpage.php?page=$page&max_results=$max_results\">Go Back</a> and re-enter the information";
    exit;
}



//check the password length
$pass_len = password_check($min_pass, $max_pass, $_POST[password]);
if ($pass_len == "no")
{


    echo "<p>You must use a password between $min_pass and $max_pass characters in length, please <a href=\"adminpage.php?page=$page&max_results=$max_results\">Go Back </a>and try again.</p>";
    exit;
}

//check for authority to view this page
if (allow_access(Administrators) != "yes")
{
    echo "not authorized to perform this function";
}

//make the connection to the database
$connection = @mysql_connect($server, $dbusername, $dbpassword) or die(mysql_error());
$db = @mysql_select_db($db_name,$connection)or die(mysql_error());

//make query to database
$sql ="SELECT * FROM $table_name WHERE username= '$_POST[username]'";
$result = @mysql_query($sql,$connection) or die(mysql_error());

//get the number of rows in the result set
$num = mysql_num_rows($result);

//check if that username already exists
if ($num != 0){

echo "<P>Sorry, that username already exists.</P>";
echo "<P><a href=\"#\" onClick=\"history.go(-1)\">Try Another Username.</a></p>";
echo "$_POST[username]";
exit;

}else{

//or add it to the database
$sql_add = "INSERT INTO $table_name (firstname, lastname, username, password, group1, group2, group3,
            pchange, email, redirect, verified, last_login) VALUES
            ('$_POST[firstname]', '$_POST[lastname]', '$_POST[username]', password('$_POST[password]'),
            '$_POST[group1]', '$_POST[group2]', '$_POST[group3]', '$_POST[pchange]', '$_POST[email]',
            '$_POST[redirect]', '1', 'last_login()')";

det er her den er galt tror jeg men kan bare ikke se hvad der er galt







$result = @mysql_query($sql_add,$connection) or die(mysql_error());
}

if ($_POST[email_user] == "Yes")
{
    $mailheaders = "From: $domain\n";
    $mailheaders .= "Dear $_POST[firstname] $_POST[lastname],\n";
    $mailheaders .= "\n";
    $mailheaders .= "An account has been created for you at $domain.\n";
    $mailheaders .= "Please log in with the following account information:\n";
    $mailheaders .= "Username: $_POST[username]\n";
    $mailheaders .= "Password: $_POST[password]\n";
    $mailheaders .= "\n";
    $mailheaders .= "Please login at:\n";
    $mailheaders .= "$base_dir/login.html\n";
    $mailheaders .= "Should you have any complications, please email the System Administrator at:\n";
    $mailheaders .= "$adminemail\n";

    $to = "$_POST[email]";
    $subject = "Your account has been created !!";

    mail($to, $subject, $mailheaders, "From: No Reply <$adminemail>\n");

}
?>

<html>

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<link rel="stylesheet" type="text/css" href="adminpage.css">
<meta http-equiv="refresh" content="5; url=adminpage.php">
<title>Add User</title>
</head>

<body>

<p><b><font face="Tahoma">User Added:</font></b></p>
<table border="1" id="table1">
    <tr>
        <td width="154"><font face="Tahoma" size="2">First Name:</td>
        <td><?php echo $_POST[firstname]; ?></font></td>
    </tr>
    <tr>
        <td width="154"><font face="Tahoma" size="2">Last Name:</td>
        <td><?php echo $_POST[lastname]; ?></font></td>
    </tr>
    <tr>
        <td width="154"><font face="Tahoma" size="2">Username:</td>
        <td><?php echo $_POST[username]; ?></font></td>
    </tr>
    <tr>
        <td width="154"><font face="Tahoma" size="2">Password:</td>
        <td><?php echo $_POST[password]; ?></font></td>
    </tr>
    <tr>
    <tr>
        <td width="154"><font face="Tahoma" size="2">E-Mail:</td>
        <td><?php echo $_POST[email]; ?></font></td>
    </tr>
        <td width="154"><font face="Tahoma" size="2">Group Memberships:</td>
        <td><?php echo $_POST[group1]; ?>&nbsp;</td>
    </tr>
    <tr>
        <td width="154">&nbsp;</td>
        <td><?php echo $_POST[group2]; ?>&nbsp;</td>
    </tr>
    <tr>
        <td width="154">&nbsp;</td>
        <td><?php echo $_POST[group3]; ?>&nbsp;</font></td>
    </tr>
    <tr>
        <td width="154"><font face="Tahoma" size="2">Redirect to:</font></td>
        <td><?php echo $_POST[redirect]; ?></font></td>
    </tr>
    <tr>
        <td width="154"><font face="Tahoma" size="2">Password Change Req'd:</td>
        <td><?php if($_POST[pchange] == "1"){$ans1="Yes";}else{$ans1="No";} echo $ans1; ?></td>
    </tr>
    <tr>
        <td width="154"><font face="Tahoma" size="2">User E-Mailed:</td>
        <td><?php echo $_POST[email_user]; ?></font></td>
    </tr>
</table>

</body>

</html>



jeg har skrevet inde i den det er her den er galt ved bare ikke hvad  men altså i mine øjne ser den rigtig ud og hvad mener den med row1????? pleas hjælp mig jeg kan bare ikke få den til at virke
04. januar 2010 - 05:25 #1
Det der umiddelbart virker maerkeligt er at de vaerdier du proever at indsaette i databasen foelger et bestemt moenster '$_POST[firstname]', '$_POST[lastname]', '$_POST[username]', o.s.v., men password inputtet ser saaledes ud:  password('$_POST[password]'),

Det var da et forsoeg vaerd at aendre det til '$_POST[password]',
Avatar billede rix Novice
04. januar 2010 - 05:47 #2
tak for rådet den virkede som sådan nu siger den
Der er en fejl i SQL syntaksen nær ''25354555', 'Users', '', '', '0', '', 'http://', '1', 'last_login()')' på linje 3
og så tænker jeg hmm hvad mener den med det ved du det??
04. januar 2010 - 06:56 #3
Du er lidt kryptisk, hvad precis mener du med at "den virkede som saadan?"  Du sagde ogsaa "jeg har fundet en udmærket login system som opretter en tabel i MySQL men når jeg prøver at få en ny kode ind...."

Det ser ud til at den kode du viser bruges naar en ny bruger vil oprette en log-in.  Hvis brugerens input passerer validation (saasom at brugername ikke allerede eksisterer) saa forsoeger koden at gemme den nye log-in i databasen, og der gaar det tilsyneladende galt.  I hvilken henseende er login systemet saa "udmaerket?"  Hvad hjaelper det dig med at goere?

Jeg gav et forslag til at aendre koden, og du proevede det ud.  Hvordan "virker" det?  Kunne du nu logge ind?  Fra din beskrivelse ser det ud som om det blot resulterede i at du fik en ny fejlmelding.  Saa vidt jeg kan se fra din nye fejlmelding saa opstaar syntaksfejlen netop ved '$_POST[password]', saa maaske var password('$_POST[password]') dog korrekt og fejlen laa et andet sted.

Saa mit umiddelbare gaet virkede tilsyneladende ikke.  Uden mere information har jeg ikke flere gaet.  Det kan vaere den kopierede kode der har en bug eller du har tilpasset koden paa en forkert maade.
Avatar billede rix Novice
04. januar 2010 - 07:10 #4
undskyld jeg er bare træt men her er hvad der skete
inden du kom med en gæt og jeg lavede den er
når jeg intastede de oplysninger for at lave en ny bryger og trykkede "regristre" skrev den erro last_login in row1
og den lavde ikke den bruger jeg bad den om
så ændre jeg det som du skrev og så sagde det ikke det men
Der er en fejl i SQL syntaksen nær ''25354555', 'Users', '', '', '0', '', 'http://', '1', 'last_login()')' på linje 3
og stadig ikke lavde en bruger
grunden til at jeg sagde jeg fandt en udmærket login system er at den har det jeg søger og den er gratis
og den vikede det er at ja det ved jeg ikke da jeg ikke har så stor forstand på det
04. januar 2010 - 07:16 #5
Jeg er bange for at jeg ikke kommer videre, saa jeg maa staa af her.  Det er saa at haabe at du faar andre indlaeg hen paa dagen naar folk begynder at staa op.
Avatar billede rix Novice
04. januar 2010 - 13:49 #6
nå men tak for du gad at bruge tid :D
Avatar billede repox Seniormester
04. januar 2010 - 14:53 #7
Find et sted hvor vi kan teste det og se at skidtet ikke virker og præcis hvilken fejl det er der kommer frem.
Jeg tror ikke fejlen ligger i den kode du har præsenteret.
Avatar billede rix Novice
04. januar 2010 - 16:27 #8
hva mener du
11. januar 2010 - 06:46 #9
rix17172, denne traad loeb ud i sandet for en uge siden, og saa siger erfaringen at der ikke sker mere.  Jeg vil derfor opfordre dig til at lukke spoergsmaalet.  Det giver god orden, og saa staar det ikke laengere som aabent paa min liste af indlaeg.  (Hvis du ikke ved det, man lukker et sporgsmaal ved at acceptere et svar, og hvis der ingen indlaeg er i form af svar (som i denne traad) saa laver du selv et indlaeg som et svar og accepterer det.)

Hvis problemet stadig bestaar tillader reglerne at du, efter en uge, opretter et nyt spoergsmaal.  Denne traad endte med at en bruger formodede at fejlen laa udenfor den kode du viste og tilboed at teste hvis du kunne stille hele koden til raadighed.  Saa hvis du opretter spoergsmaalet igen skal du nok placere hele koden paa et sted hvor den kan downloades eller inspiceres.
Avatar billede rix Novice
11. januar 2010 - 07:08 #10
tak for rådet :D
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