Avatar billede sputii Nybegynder
03. februar 2009 - 21:15 Der er 59 kommentarer og
1 løsning

PHP/Mysql ... Point database

Hej.

Jeg har et problem med noget PHP/Mysql.
Som jeg mangler noget hjælp til.
Det jeg mangler hjælp til er hvordan man laver et point system ligesom denne site har lavet..

Det er det er jeg vil gerne have et script på hvordan jeg kan hente noget ud fra den database jeg har fx så har jeg:

Brugernavn = Jens
Password = 123
Point = 500

Hvordan laver jeg så et script på når jeg logger ind så står der ens point..
Avatar billede jespernerd Nybegynder
03. februar 2009 - 21:36 #1
Du henter vel sjovt nok bare point feltet og udskriver?

<?php
function GetPoints($__User)
{
      $SQL = "SELECT `point` FROM `brugere` WHERE `brugernavn` = '" . mysql_real_escape_string($__User) . "'";
      $Hent = mysql_query($SQL) or die ( mysql_error());

      if ( mysql_num_rows ( $Hent > 0 )
      {
        $Data = mysql_fetch_assoc ( $Hent ) or die ( mysql_error());
        return $Data['point'];
      } else {
        return 0;
      }
}

echo "Hej, du har " . GetPoints('Hans brugernavn her') . " point!";
?>
Avatar billede jespernerd Nybegynder
03. februar 2009 - 21:37 #2
if ( mysql_num_rows ( $Hent > 0 )

Skal ændres til
if ( mysql_num_rows ( $Hent ) > 0 )
Avatar billede sputii Nybegynder
03. februar 2009 - 22:06 #3
Skal man ikke logge ind på sin Database med mysql_connect
Avatar billede sputii Nybegynder
03. februar 2009 - 22:10 #4
øhh... Ret dine fejl tak..
Avatar billede sputii Nybegynder
03. februar 2009 - 22:13 #5
Jeg har ikke Local jeg har WebServer
Avatar billede jakobdo Ekspert
03. februar 2009 - 22:18 #6
Har du allerede et login script i dag ?
Hvis ja, vis det lige.
Avatar billede sputii Nybegynder
03. februar 2009 - 22:26 #7
nej det har jeg ikke.. Men jeg har haft det..
Avatar billede sputii Nybegynder
03. februar 2009 - 22:33 #8
Men du kunne godt skrive et til mig vis du vil og er sød tak..
Avatar billede jakobdo Ekspert
04. februar 2009 - 07:57 #9
Har du en login formular ?
Avatar billede sputii Nybegynder
04. februar 2009 - 10:56 #10
ja, jeg har lige lavet en, har ikke tested den.

<?php
$conn = mysql_connect("Host", "Bruger", "password");
mysql_select_db("Database");

if(!isset($_POST['Submit'])) {
    echo "Husk at logge ind";
    }else{
        $postbruger = $_POST['Brugernavn'];
        $postpass = $_POST['Password'];
       
        $resultat = mysql_query("SELECT Id FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

        $number = mysql_num_rows($resultat);
        if($number == 1) {
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password'] = $postpass;
        echo "Hej, $postbruger !<br />Du er nu logget ind";

        }else{
        ?>
        <form action="login-test.php" method="post" name="Login" id="Login">
          <span class="style2">Brugernavn:          </span>
          <input type="text" name="Brugernavn" />
          <span class="style2">Password:          </span>
          <input type="password" name="Password" />
          <br />
          <input type="submit" name="Submit" value="Login" />
        </form>
        <?php
        }
    }
?>

Alt virker med login... Men det er point jeg ikke kan få til at virke
Avatar billede jakobdo Ekspert
04. februar 2009 - 11:07 #11
Utestet, men prøve lige:

<?php
$conn = mysql_connect("Host", "Bruger", "password");
mysql_select_db("Database");

if(!isset($_POST['Submit'])) {
    echo "Husk at logge ind";
}else{
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
     
    $resultat = mysql_query("SELECT Point FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Point']      = $row['Point'];
        echo "Hej, $postbruger !<br />Du er nu logget ind<br />";
        echo "Du har " . $_SESSION['Point'] . " point";
    }else{
?>
    <form action="login-test.php" method="post" name="Login" id="Login">
        <span class="style2">Brugernavn:          </span>
        <input type="text" name="Brugernavn" />
        <span class="style2">Password:          </span>
        <input type="password" name="Password" />
        <br />
        <input type="submit" name="Submit" value="Login" />
    </form>
<?php
    }
}
?>
Avatar billede sputii Nybegynder
04. februar 2009 - 12:14 #12
Tak det virker..

Ville lige sige at jeg er kun 12 år.
Bliver 13 om 11 dage.

Så jeg er ikke så god til programering men jeg kan en del som:

<?php
$conn = mysql_connect("Host", "Bruger", "password");
mysql_select_db("Database");

if(!isset($_POST['Submit'])) {
    echo "Husk at logge ind";
    }else{
        $postbruger = $_POST['Brugernavn'];
        $postpass = $_POST['Password'];
     
        $resultat = mysql_query("SELECT Id FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

        $number = mysql_num_rows($resultat);
        if($number == 1) {
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password'] = $postpass;
        echo "Hej, $postbruger !<br />Du er nu logget ind";

        }else{
        ?>
        <form action="login-test.php" method="post" name="Login" id="Login">
          <span class="style2">Brugernavn:          </span>
          <input type="text" name="Brugernavn" />
          <span class="style2">Password:          </span>
          <input type="password" name="Password" />
          <br />
          <input type="submit" name="Submit" value="Login" />
        </form>
        <?php
        }
    }
?>
Avatar billede jakobdo Ekspert
04. februar 2009 - 12:29 #13
Jamen tillykke med det.

Du får et svar...
Avatar billede jakobdo Ekspert
04. februar 2009 - 13:24 #14
Takker for point.
Avatar billede sputii Nybegynder
04. februar 2009 - 16:31 #15
Så lidt..

Jeg har fået et nyt problem.

if(!isset($_POST['Submit' || 'Svar'])) {

Det virker ikke når jeg skriver det, den kan ikke finde ud af at lave det der || ..
Avatar billede sputii Nybegynder
04. februar 2009 - 16:36 #16
Hele koden er den her:

<?php
$conn = mysql_connect("Host", "Bruger", "Password");
mysql_select_db("Database");
if(!isset($_POST['Submit' || 'Svar'])) {
    echo "<span class=style2>Log ind tak.</span>";
}else{
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
   
    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
        echo "<span class=style2> Her er der et spøgsmål.. Svar rigtig for mere moral </span>";
        ?>
        <form action="login-test.php" method="post" name="spo" id="spo">
          <p><span class="style2">Hvad er navnet p&aring; klan lederen:<br />
          </span><span class="style2">1: Styler</span>
            <input type="radio" name="Svar1" value="Value 1" />
            <br />
            <span class="style2">2: Dimon</span>
            <input type="radio" name="Svar2" value="Value 2" checked="checked" />
            <br />
            <input type="submit" name="Svar" value="Færdig" />
          </p>
        </form>
        <p>
          <?php
    }else{
    echo "<span class=style2> Tak for svaret </span>";
    }
}
?>

Og den her

<?php
      $conn = mysql_connect("Host", "Bruger", "Password");
      mysql_select_db("Database");
      if(!isset($_POST['Svar'])) {
    echo "  ";
}else{
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
   
    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

        if($Svar1 == "Value 1") {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
        echo "<span class=style2> Rigtigt.. </span>";
    }else{
    echo "<span class=style2> Forkert svar </span>";
    }
}
?>

jeg har lavet Point til Moral. Men det virker også fint..
Avatar billede sputii Nybegynder
04. februar 2009 - 16:41 #17
Det hele er i den samme side..
jeg kunne bare ikke huske det der $_PHPSELF så jeg har skrevet login-test.php i stedet ved formen op over..

Og øverst oppe var der den her som vi lavet før..

<?php
$conn = mysql_connect("Host", "Bruger", "password");
mysql_select_db("Database");

if(!isset($_POST['Submit'])) {
    echo "Husk at logge ind";
}else{
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
   
    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Point']      = $row['Moral'];
        echo "Hej, $postbruger !<br />Du er nu logget ind<br />";
        echo "Du har " . $_SESSION['Moral'] . " moral";
    }else{
?>
    <form action="login-test.php" method="post" name="Login" id="Login">
        <span class="style2">Brugernavn:          </span>
        <input type="text" name="Brugernavn" />
        <span class="style2">Password:          </span>
        <input type="password" name="Password" />
        <br />
        <input type="submit" name="Submit" value="Login" />
    </form>
<?php
    }
}
?>
Avatar billede jakobdo Ekspert
04. februar 2009 - 16:54 #18
men hvad er problemet nu ?
Avatar billede sputii Nybegynder
04. februar 2009 - 18:28 #19
det er det her... Den viser stadig.. Log ind tak..
Og jeg kommer fra Submit eller Svar jov..

<?php
$conn = mysql_connect("Host", "Bruger", "Password");
mysql_select_db("Database");
if(!isset($_POST['Submit' || 'Svar'])) {
    echo "<span class=style2>Log ind tak.</span>";
}else{
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
 
    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
        echo "<span class=style2> Her er der et spøgsmål.. Svar rigtig for mere moral </span>";
        ?>
        <form action="login-test.php" method="post" name="spo" id="spo">
          <p><span class="style2">Hvad er navnet p&aring; klan lederen:<br />
          </span><span class="style2">1: Styler</span>
            <input type="radio" name="Svar1" value="Value 1" />
            <br />
            <span class="style2">2: Dimon</span>
            <input type="radio" name="Svar2" value="Value 2" checked="checked" />
            <br />
            <input type="submit" name="Svar" value="Færdig" />
          </p>
        </form>
        <p>
          <?php
    }else{
    echo "<span class=style2> Tak for svaret </span>";
    }
}
?>
Avatar billede sputii Nybegynder
04. februar 2009 - 18:35 #20
Det fordi jeg har tænkt mig at lave et spøgeskema og så skal man så svare på nogen spøgsmål.. Der er det så:

Hvad er navnet på klan lederen
<p><span class="style2">Hvad er navnet på klan lederen:<br />
          </span><span class="style2">1: Styler</span>
            <input type="radio" name="Svar1" value="Value 1" />
            <br />
            <span class="style2">2: Dimon</span>
            <input type="radio" name="Svar2" value="Value 2" checked="checked" />
            <br />
            <input type="submit" name="Svar" value="Færdig" />
Avatar billede sputii Nybegynder
04. februar 2009 - 18:37 #21
Og mit radio button virker ikke.. Man kan klippe på dem begge på en gang
Avatar billede jakobdo Ekspert
04. februar 2009 - 19:33 #22
For at en radiobutton virker, skal du anvende samme navn på svar 1 og svar 2.

Du bør ikke smide svaret inden i din if(...) if(mysql_num_rows($resultat) == 1) {

Du bør have en funktion som sørger for at styre et login.
Når så en bruger er logget ind (og du husker at anvende session_start()) i toppen af din kode, så kan du på sider fremover blot kigge på:

<?php
session_start();
if(isset($_SESSION['loget_in'])){
echo 'Det er ok, svar på nogle spørgsmål...';
}else{
echo 'Hov, du skal huske at logge ind...';
}
?>
Avatar billede sputii Nybegynder
04. februar 2009 - 19:47 #23
Men kan du finde ud af at lave et spøgeskema..
Avatar billede jakobdo Ekspert
04. februar 2009 - 20:36 #24
F.eks.:

<p><span class="style2">Hvad er navnet på klan lederen:<br />
          </span><span class="style2">1: Styler</span>
            <input type="radio" name="rSvar" value="svar1" />
            <br />
            <span class="style2">2: Dimon</span>
            <input type="radio" name="rSvar" value="svar2" checked="checked" />
            <br />
            <input type="submit" name="Svar" value="Færdig" />
Avatar billede sputii Nybegynder
04. februar 2009 - 21:07 #25
Hvordan laver jeg scriptet som:

<?php
      $conn = mysql_connect("Host", "Bruger", "Password");
      mysql_select_db("Database");
      if(!isset($_POST['Svar'])) {
    echo "  ";
}else{
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
 
    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE  Brugernavn = '$postbruger' AND Password = '$postpass'");
if("checked" == "svar1") { // << DER VED JEG IKKE HVAD DER SKAL STÅ
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
        echo "<span class=style2> Rigtigt.. </span>";
    }else{
    echo "<span class=style2> Forkert svar </span>";
    }
}
?>
Avatar billede jakobdo Ekspert
04. februar 2009 - 21:17 #26
Men du skal jo ikke blande login og dine spørgsmål sammen.
Start med at få dit login script til at virke, og gemme med session.
Så bliver det nemmere at lave spørgeskema osv. senere.
Avatar billede sputii Nybegynder
04. februar 2009 - 21:21 #27
Jeg mener

if("svar1" == "checked") {

I stedet for
if("checked" == "svar1") {
Avatar billede jakobdo Ekspert
04. februar 2009 - 21:26 #28
Og jeg mener stadig du skal koncentrere dig om at få styr på dit login script først.
Glem dit spørgeskema, ellers lærer du aldrig PHP.
Dit spørgeskema laver vi, når JEG mener dit login script er ok. :o)
Avatar billede sputii Nybegynder
04. februar 2009 - 21:33 #29
Jeg er helt forviret??
Avatar billede sputii Nybegynder
04. februar 2009 - 21:34 #30
Ok.. Lad os komme igang
Avatar billede jakobdo Ekspert
04. februar 2009 - 21:35 #31
Vis mig hvad du har af login script nu...
Avatar billede sputii Nybegynder
04. februar 2009 - 21:41 #32
Her er et login script:

<?php
$conn = mysql_connect("Host", "Bruger", "Password");
mysql_select_db("Database");
if(!isset($_POST['Submit'])) {
    echo "<span class=style2>Log ind tak. </span>";
}else{
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
   
    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
        echo "<span class=style2> Hej, $postbruger !<br />Du er nu logget ind<br /> </span>";
        echo "<span class=style2> Du har " . $_SESSION['Moral'] . " moral </span>";
    }else{
?>
    <form action="login-test.php" method="post" name="Login" id="Login">
        <span class="style2">Brugernavn:          </span>
        <input type="text" name="Brugernavn" />
        <span class="style2">Password:          </span>
        <input type="password" name="Password" />
        <br />
        <input type="submit" name="Submit" value="Login" />
    </form>
<?php
    }
}
?>
<?php
$conn = mysql_connect("Host", "Bruger", "Password");
mysql_select_db("Database");
if(!isset($_POST['Submit'])) {
    echo "  ";
}else{
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
   
    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
        echo "<span class=style2> Hej, $postbruger !<br />Der kommer snart nogen ting her.. Vi ses<br /> </span>";
    }else{
    echo "<span class=style2> Forkert Brugernavn/Password </span>";
    }
}
?>

Så var der session_start() du skulle hjælpe med..
Avatar billede sputii Nybegynder
04. februar 2009 - 21:48 #33
Skal lige i bad.. Kommer senest inden 15 min.. Du kan bare skrive det der med session_start()
Avatar billede jakobdo Ekspert
04. februar 2009 - 21:50 #34
Test disse 2 scripts:

<?php
//login-test.php
session_start();

$conn = mysql_connect("Host", "Bruger", "Password");
mysql_select_db("Database");

if(isset($_POST['Submit'])) {
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);
 
    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
    }
}
?>

<?php
//login.php
session_start();
if(isset($_SESSION['loget_in']) && $_SESSION['loget_in']){
    echo "<span class=style2> Hej, $_SESSION[Brugernavn']!<br />Du er nu logget ind<br /> </span>";
  echo "<span class=style2> Du har " . $_SESSION['Moral'] . " moral </span>";
}else{
?>
<form action="login-test.php" method="post" name="Login" id="Login">
    <span class="style2">Brugernavn:          </span>
    <input type="text" name="Brugernavn" />
    <span class="style2">Password:          </span>
    <input type="password" name="Password" />
    <br />
    <input type="submit" name="Submit" value="Login" />
</form>
<?php
}
?>
Avatar billede sputii Nybegynder
04. februar 2009 - 22:00 #35
Fejl:

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /usr/home/web/web274075/log.php:7) in /usr/home/web/web274075/log.php on line 9
Avatar billede jakobdo Ekspert
04. februar 2009 - 22:06 #36
Så har du ikke taget mine 2 script og gemt dem direkte i 2 filer...
Avatar billede sputii Nybegynder
04. februar 2009 - 22:17 #37
Ups
Avatar billede sputii Nybegynder
04. februar 2009 - 22:28 #38
der stå stadig:

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /usr/home/web/web274075/LoginMoral/login-test.php:7) in /usr/home/web/web274075/LoginMoral/login-test.php on line 9
Avatar billede sputii Nybegynder
04. februar 2009 - 22:29 #39
og vis jeg går til siden login.php stå der:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting ']' in /usr/home/web/web274075/LoginMoral/login.php on line 11
Avatar billede jakobdo Ekspert
05. februar 2009 - 08:06 #40
Vis mig dine 2 scripts tak.
Avatar billede sputii Nybegynder
05. februar 2009 - 10:57 #41
ok..

<!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>
</head>
<body>
<?php
//login-test.php
session_start();

$conn = mysql_connect("host", "bruger", "password");
mysql_select_db("database");

if(isset($_POST['Submit'])) {
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);

    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
    }
}
?>
</body>
</html>

<!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>
</head>
<body>
<?php
//login.php
session_start();
if(isset($_SESSION['loget_in']) && $_SESSION['loget_in']){
    echo "Hej, $_SESSION[Brugernavn']!<br />Du er nu logget ind<br />";
  echo "Du har " . $_SESSION['Moral'] . " moral";
}else{
?>
<form action="login-test.php" method="post" name="Login" id="Login">
    <span class="style2">Brugernavn:          </span>
    <input type="text" name="Brugernavn" />
    <span class="style2">Password:          </span>
    <input type="password" name="Password" />
    <br />
    <input type="submit" name="Submit" value="Login" />
</form>
<?php
}
?>
</body>
</html>
Avatar billede jakobdo Ekspert
05. februar 2009 - 11:17 #42
Jeg har jo ikke bedt dig smide <doctype...> osv... over..

Smid dem efter session_start();
Avatar billede sputii Nybegynder
05. februar 2009 - 11:34 #43
Vil det sige at det hele skal stå sådan her..

<?php
//login-test.php
session_start();

$conn = mysql_connect("host", "bruger", "password");
mysql_select_db("database");

if(isset($_POST['Submit'])) {
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);

    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
    }
}
?>
<!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>
</head>
<body>
</body>
</html>


<?php
//login.php
session_start();
if(isset($_SESSION['loget_in']) && $_SESSION['loget_in']){
    echo "Hej, $_SESSION[Brugernavn']!<br />Du er nu logget ind<br />";
  echo "Du har " . $_SESSION['Moral'] . " moral";
}else{
?>
<form action="login-test.php" method="post" name="Login" id="Login">
    <span class="style2">Brugernavn:          </span>
    <input type="text" name="Brugernavn" />
    <span class="style2">Password:          </span>
    <input type="password" name="Password" />
    <br />
    <input type="submit" name="Submit" value="Login" />
</form>
<?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>
</head>
<body>
</body>
</html>
Avatar billede jakobdo Ekspert
05. februar 2009 - 12:05 #44
Ja og nej.
Din html skal jo passe til dit output.
Output skal jo gerne komme mellem <body>...</body>
Avatar billede sputii Nybegynder
05. februar 2009 - 12:09 #45
<?php
//login.php
session_start();
if(isset($_SESSION['loget_in']) && $_SESSION['loget_in']){
    echo "Hej, $_SESSION[Brugernavn']!<br />Du er nu logget ind<br />";
  echo "Du har " . $_SESSION['Moral'] . " moral";
}else{
?>
<!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>
</head>
<body>
<form action="login-test.php" method="post" name="Login" id="Login">
    <span class="style2">Brugernavn:          </span>
    <input type="text" name="Brugernavn" />
    <span class="style2">Password:          </span>
    <input type="password" name="Password" />
    <br />
    <input type="submit" name="Submit" value="Login" />
</form>
<?php
}
?>
</body>
</html>

Sådan??
Avatar billede jakobdo Ekspert
05. februar 2009 - 12:11 #46
F.eks. ja. :o)
Men du har så output over html... :o)
Avatar billede sputii Nybegynder
05. februar 2009 - 12:14 #47
Men når jeg så går ind på login-test.php..

så står der ingen ting og når jeg går ind på test.php

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting ']' in /usr/home/web/web274075/LoginMoral/login.php on line 11
Avatar billede jakobdo Ekspert
05. februar 2009 - 12:15 #48
Så har jeg nok lavet en fejl et sted.
Så må du kigge i linje 11 eller der omkring. :o)
Avatar billede sputii Nybegynder
05. februar 2009 - 12:17 #49
scriptet er:

<?php
//login.php
session_start();
if(isset($_SESSION['loget_in']) && $_SESSION['loget_in']){
    echo "Hej, $_SESSION[Brugernavn']!<br />Du er nu logget ind<br />";
  echo "Du har " . $_SESSION['Moral'] . " moral";
}else{
?>
<!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>
</head>
<body>
<form action="login-test.php" method="post" name="Login" id="Login">
    Brugernavn:
    <input type="text" name="Brugernavn" />
    Password:   
    <input type="password" name="Password" />
    <br />
    <input type="submit" name="Submit" value="Login" />
</form>
<?php
}
?>
</body>
</html>

Og fejlen er

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting ']' in /usr/home/web/web274075/login.php on line 5
Avatar billede jakobdo Ekspert
05. februar 2009 - 12:21 #50
Der er jo netop en fejl i linje 5.
Prøv at se om du kan finde fejlen i linjen her:

echo "Hej, $_SESSION[Brugernavn']!<br />Du er nu logget ind<br />";
Avatar billede sputii Nybegynder
05. februar 2009 - 12:21 #51
echo "Hej, $_SESSION[Brugernavn']!<br />Du er nu logget ind<br />";

måske

echo "Hej, $_SESSION" . ['Brugernavn'] . "!<br />Du er nu logget ind<br />";
Avatar billede sputii Nybegynder
05. februar 2009 - 12:23 #52
echo "Hej, $_SESSION[Brugernavn']!<br />Du er nu logget ind<br />";

Jeg mener

echo "Hej," . $_SESSION['Brugernavn'] . "!<br />Du er nu logget ind<br />";
Avatar billede jakobdo Ekspert
05. februar 2009 - 12:25 #53
Flot! :o)
Avatar billede sputii Nybegynder
05. februar 2009 - 12:27 #54
Nice den gemmer det i cookie nu...

Jeg indtaster mit bruger og password og så går den hen til en side og står stille
Avatar billede sputii Nybegynder
05. februar 2009 - 12:28 #55
Men når jeg går tilbage igen så står der
Hej,sputii!
Du er nu logget ind
Du har 500 moral
Avatar billede sputii Nybegynder
05. februar 2009 - 12:30 #56
Vi skulle til spøgeskema vis man svare rigtigt skal man så ha mere moral..
Avatar billede jakobdo Ekspert
05. februar 2009 - 12:31 #57
Vis din formular nu.
Avatar billede jakobdo Ekspert
05. februar 2009 - 12:32 #58
Og... Du skal huske på jeg gør dette gratis, så sidder ikke bare og venter på du skal skrive og jeg kan hjælpe dig. (eller jo, det gør jeg faktisk, men ikke restne af dagen) :o)
Avatar billede sputii Nybegynder
05. februar 2009 - 12:36 #59
Nej nej.. Min formular er:

<?php
//login.php
session_start();
if(isset($_SESSION['loget_in']) && $_SESSION['loget_in']){
    echo "Hej," . $_SESSION['Brugernavn'] . "!<br />Du er nu logget ind<br />";
  echo "Du har " . $_SESSION['Moral'] . " moral";
}else{
?>
<!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>
</head>
<body>
<form action="login-test.php" method="post" name="Login" id="Login">
    Brugernavn:
    <input type="text" name="Brugernavn" />
    Password:   
    <input type="password" name="Password" />
    <br />
    <input type="submit" name="Submit" value="Login" />
</form>
<?php
}
?>
</body>
</html>

<?php
//login-test.php
session_start();

$conn = mysql_connect("Host", "Bruger", "Password");
mysql_select_db("Database");

if(isset($_POST['Submit'])) {
    $postbruger = mysql_real_escape_string($_POST['Brugernavn']);
    $postpass  = mysql_real_escape_string($_POST['Password']);

    $resultat = mysql_query("SELECT Moral FROM `brugere` WHERE Brugernavn = '$postbruger' AND Password = '$postpass'");

    if(mysql_num_rows($resultat) == 1) {
        $row = mysql_fetch_assoc($resultat);
        $_SESSION['loget_in'] = 1;
        $_SESSION['Brugernavn'] = $postbruger;
        $_SESSION['Password']  = $postpass;
        $_SESSION['Moral']      = $row['Moral'];
    }
}
?>
<!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>
</head>
<body>
</body>
</html>
Avatar billede sputii Nybegynder
06. februar 2009 - 19:28 #60
Har lukket denne forum
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

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Kickstart din IT-karriere som IT-supporterelev på Flyvestation Aalborg

Lægemiddelstyrelsen

Løsningsarkitekt

Politiets Efterretningstjeneste

AI/ML udvikler i PET

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Netværkstekniker til Forsvarets Cyberdivision i Hvidovre – Er det dig?