Avatar billede far_mand Nybegynder
28. maj 2004 - 14:10 Der er 18 kommentarer og
1 løsning

lille php fejl

Hejsa, jeg er helt ny inden for PHP og jeg har downloadet et færdigt logon somk driller lidt, jeg har oprettet mysql tabellen...

Se det her: http://www.freeak.dk/dd/logon.php

Når jeg klikker på "Jeg vil være med" sker der ingen ting, og det skulle gerne være der man opretter en bruger..
Avatar billede riversen Nybegynder
28. maj 2004 - 14:23 #1
du har bare skrevet <form>. Du skal vel poste dataene til en php fil, der opretter brugeren.
Avatar billede dennismp Nybegynder
28. maj 2004 - 14:23 #2
og det bliver også møj svært at se om det er et php-problem, uden at se noget php kode :)
Avatar billede far_mand Nybegynder
28. maj 2004 - 14:23 #3
det må du uddybe lidt...
forstår ikke :)
Avatar billede psyrex Nybegynder
28. maj 2004 - 14:24 #4
Lav en <form action="filen.php" method="post"> Og lad den slutte med </form>
Avatar billede far_mand Nybegynder
28. maj 2004 - 14:24 #5
jamen så får i lige php koden..
Avatar billede psyrex Nybegynder
28. maj 2004 - 14:25 #6
Okay.
Avatar billede far_mand Nybegynder
28. maj 2004 - 14:25 #7
<?php

function bund(){
echo "<hr><center>Hjælp? <a href=mjn@freeak.dk>Mail mig..";
}

function top(){
echo '<link rel="stylesheet" href="style.css" type="text/css">';
echo '<center><h2>ThorsNet Logon</h2><hr>';
}

function tilbage($meddelelse){
top();
echo "<center><br><br>$meddelelse\n";
echo '<form><input type=button value="<<< Tilbage" onClick=history.back()></form>';
bund();
exit;
}

function tjek_navn($navn,$email){
if (!$navn) tilbage( "Du har glemt at skrive noget i feltet \"Navn\"...");
    $navn1 = ereg_replace("([^0-9a-zæøåA-ZÆØÅ -.])","",$navn);
if ($navn <> $navn1) tilbage("Ugyldige tegn i feltet \"Navn\"...");

if (!$email) tilbage( "Du har glemt at skrive noget i feltet \"E-mail\"...");
    $email1 = ereg_replace("([^0-9a-zæøåA-ZÆØÅ@._])","",$email);
if ($email <> $email1) tilbage("Ugyldige tegn i feltet \"E-mail\"...");
}

function tjek_pass($bruger,$password){
if (!$bruger) tilbage( "Du har glemt at skrive noget i feltet \"Brugernavn\"...");
    $bruger1 = ereg_replace("([^0-9a-zæøåA-ZÆØÅ])","",$bruger);
if ($bruger <> $bruger1) tilbage("Ugyldige tegn i feltet \"Brugernavn\"...");

if (!$password) tilbage( "Du har glemt at skrive noget i feltet \"Password\"...");
    $password1 = ereg_replace("([^0-9a-zA-Z])","",$password);
if ($password <> $password1) tilbage("Ugyldige tegn i feltet \"Password\"...");
}

if($action=="Jeg vil gerne være med!"){
top();
?>
<p>Hvis du vil være med skal du udfylde denne lille formular.
<center>
<form method="post">
<table>
  <tr> 
    <td><font face="Verdana">Navn:</td> 
    <td><input type="text" name="navn"></td>
    </tr>
  <tr> 
    <td><font face="Verdana">E-mail:</td> 
    <td><input type="text" name="email"></td>
    </tr>
      <tr> 
    <td><font face="Verdana">Brugernavn:</td> 
    <td><input type="text" name="bruger"></td>
    </tr>
  <tr> 
    <td><font face="Verdana">Password:</td> 
    <td><input type="password" name="password"></td>
    </tr>
  <tr> 
    <td><font face="Verdana">Gentag password:</td> 
    <td><input type="password" name="genpassword"></td>
    </tr>
  <tr>
    <td></td>
        <td><input type="submit" name="action" value="Opret mig."></td>
  </tr>
</form>
</table>
<?
bund();
exit;
}

if($action=="Opret mig."){
if($password!=$genpassword)tilbage("Der er fejl i \"Password\" ...");
tjek_navn($navn,$email);
tjek_pass($bruger,$password);
include("mylogon.inc");

$resultat = mysql_query("select * from logon where bruger = '$bruger'");
if(!mysql_num_rows($resultat)==0)tilbage ("Brugernavnet er ikke ledigt, vælg et andet ...");

//mysql_query("INSERT INTO logon (bruger,password,navn,email )VALUES ('$bruger','$password','$navn','$email')")or die (mysql_error());

top();
echo "<p><center>Du er nu oprettet, så skal du bare logge dig på!<p>";
echo "<input type=\"button\" value=\"Ja, men så gør jeg det!\"
onclick=\"document.location.href='".$PHP_SELF."';\" <br><p><br>";

bund();
exit;
}

if($action=="Login"){
tjek_pass($bruger,$password);

include("mylogon.inc");

$resultat = mysql_query("select * from logon where bruger = '$bruger'");
$row = mysql_fetch_array($resultat);

if (!$row[bruger]) tilbage ( "Dit brugernavn er enten forkert eller også er du ikke oprettet ...");
if ($row[password]<>$password) tilbage ( "Password er forkert ...");

mysql_query("UPDATE logon SET antal=antal+1 where bruger = '$bruger' ");

header ("Location: http://www.freeak.dk");
exit;
}

top();
?>
<center>
<form>
<table>
  <tr> 
    <td><font face="Verdana">Brugernavn:</td> 
    <td><input type="text" name="bruger"></td>
    </tr>
  <tr> 
    <td><font face="Verdana">Password:</td> 
    <td><input type="password" name="password"></td></tr>
  <tr>
    <td></td>
        <td><input type="submit" name="action" value="Login"></td>
  </tr>
</form>
<form>
  <tr>
    <td></td>
        <td><input type="submit" name="action" value="Jeg vil gerne være med!"></td>
  </tr>
</table>
</form>                       
<?bund();?>
Avatar billede riversen Nybegynder
28. maj 2004 - 14:26 #8
alle steder hvor der står $action skal rettes til $_GET["action"] i hvert fald. Hvis du benytter post skal du bruge $_POST["action"]
Avatar billede psyrex Nybegynder
28. maj 2004 - 14:27 #9
<?php

function bund(){
echo "<hr><center>Hjælp? <a href=mjn@freeak.dk>Mail mig..";
}

function top(){
echo '<link rel="stylesheet" href="style.css" type="text/css">';
echo '<center><h2>ThorsNet Logon</h2><hr>';
}

function tilbage($meddelelse){
top();
echo "<center><br><br>$meddelelse\n";
echo '<form><input type=button value="<<< Tilbage" onClick=history.back()></form>';
bund();
exit;
}

function tjek_navn($navn,$email){
if (!$navn) tilbage( "Du har glemt at skrive noget i feltet \"Navn\"...");
    $navn1 = ereg_replace("([^0-9a-zæøåA-ZÆØÅ -.])","",$navn);
if ($navn <> $navn1) tilbage("Ugyldige tegn i feltet \"Navn\"...");

if (!$email) tilbage( "Du har glemt at skrive noget i feltet \"E-mail\"...");
    $email1 = ereg_replace("([^0-9a-zæøåA-ZÆØÅ@._])","",$email);
if ($email <> $email1) tilbage("Ugyldige tegn i feltet \"E-mail\"...");
}

function tjek_pass($bruger,$password){
if (!$bruger) tilbage( "Du har glemt at skrive noget i feltet \"Brugernavn\"...");
    $bruger1 = ereg_replace("([^0-9a-zæøåA-ZÆØÅ])","",$bruger);
if ($bruger <> $bruger1) tilbage("Ugyldige tegn i feltet \"Brugernavn\"...");

if (!$password) tilbage( "Du har glemt at skrive noget i feltet \"Password\"...");
    $password1 = ereg_replace("([^0-9a-zA-Z])","",$password);
if ($password <> $password1) tilbage("Ugyldige tegn i feltet \"Password\"...");
}

if($action=="Opret"){
top();
?>
<p>Hvis du vil være med skal du udfylde denne lille formular.
<center>
<form action="" method="post">
<table>
  <tr> 
    <td><font face="Verdana">Navn:</td> 
    <td><input type="text" name="navn"></td>
    </tr>
  <tr> 
    <td><font face="Verdana">E-mail:</td> 
    <td><input type="text" name="email"></td>
    </tr>
      <tr> 
    <td><font face="Verdana">Brugernavn:</td> 
    <td><input type="text" name="bruger"></td>
    </tr>
  <tr> 
    <td><font face="Verdana">Password:</td> 
    <td><input type="password" name="password"></td>
    </tr>
  <tr> 
    <td><font face="Verdana">Gentag password:</td> 
    <td><input type="password" name="genpassword"></td>
    </tr>
  <tr>
    <td></td>
        <td><input type="submit" name="action" value="Opret mig."></td>
  </tr>
</form>
</table>
<?
bund();
exit;
}

if($action=="Opret mig."){
if($password!=$genpassword)tilbage("Der er fejl i \"Password\" ...");
tjek_navn($navn,$email);
tjek_pass($bruger,$password);
include("mylogon.inc");

$resultat = mysql_query("select * from logon where bruger = '$bruger'");
if(!mysql_num_rows($resultat)==0)tilbage ("Brugernavnet er ikke ledigt, vælg et andet ...");

//mysql_query("INSERT INTO logon (bruger,password,navn,email )VALUES ('$bruger','$password','$navn','$email')")or die (mysql_error());

top();
echo "<p><center>Du er nu oprettet, så skal du bare logge dig på!<p>";
echo "<input type=\"button\" value=\"Ja, men så gør jeg det!\"
onclick=\"document.location.href='".$PHP_SELF."';\" <br><p><br>";

bund();
exit;
}

if($action=="Login"){
tjek_pass($bruger,$password);

include("mylogon.inc");

$resultat = mysql_query("select * from logon where bruger = '$bruger'");
$row = mysql_fetch_array($resultat);

if (!$row[bruger]) tilbage ( "Dit brugernavn er enten forkert eller også er du ikke oprettet ...");
if ($row[password]<>$password) tilbage ( "Password er forkert ...");

mysql_query("UPDATE logon SET antal=antal+1 where bruger = '$bruger' ");

header ("Location: http://www.freeak.dk");
exit;
}

top();
?>
<center>
<form>
<table>
  <tr> 
    <td><font face="Verdana">Brugernavn:</td> 
    <td><input type="text" name="bruger"></td>
    </tr>
  <tr> 
    <td><font face="Verdana">Password:</td> 
    <td><input type="password" name="password"></td></tr>
  <tr>
    <td></td>
        <td><input type="submit" name="action" value="Login"></td>
  </tr>
</form>
<form>
  <tr>
    <td></td>
        <td><input type="submit" name="action" value="Opret"></td>
  </tr>
</table>
</form>                       
<?bund();?>
Avatar billede riversen Nybegynder
28. maj 2004 - 14:30 #10
psyrex: hvis du nøjes med at poste det du har ændret, ville tråden forblive overskuelig :-)
Avatar billede far_mand Nybegynder
28. maj 2004 - 14:32 #11
er stadig ikke med, skal jeg bare bruge den kode du skrev psyrex?

og fatter ikke hvor jeg skal skrive det der du sagde riversen..

Sigtil hvis i skal bruge andre af filerne..
Avatar billede psyrex Nybegynder
28. maj 2004 - 14:34 #12
Giver et godt tip.. Lære mere php før du går videre. DU kan jo ikke noget. www.webcafe.dk/artikler/php/ ! ;)
Avatar billede riversen Nybegynder
28. maj 2004 - 14:35 #13
far_mand: hvad er det lige du ikke forstår? der hvor der står $action skal du erstatte med $_GET["action"] eller $_POST["action"] alt efter om du skriver <form method="post"> eller <form method="get">
Avatar billede riversen Nybegynder
28. maj 2004 - 14:36 #14
hvis du er i tvivl kan du evt. bare bruge $_REQUEST["action"]... det virker uanset hvad. Bare lav en søg og erstat
Avatar billede far_mand Nybegynder
29. maj 2004 - 10:40 #15
Hm, det første sted der står action er her
if($action=="Opret"){
skal det så ændres til:
if($_REQUEST["action"]=="Opret"){
Avatar billede riversen Nybegynder
29. maj 2004 - 11:54 #16
nemlig... og alle andre steder
Avatar billede far_mand Nybegynder
02. juni 2004 - 19:56 #17
oki thx..

Riversen smid svar..
Avatar billede riversen Nybegynder
02. juni 2004 - 19:58 #18
det er gratis
Avatar billede far_mand Nybegynder
02. juni 2004 - 20:33 #19
bah.. takker da.. :)
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
Computerworld tilbyder specialiserede kurser i database-management

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