Avatar billede pad Nybegynder
10. juni 2008 - 16:25 Der er 14 kommentarer og
1 løsning

Hvorfor får jeg det spyttet ud?

Nogle der kan svare på hvorfor jeg får spyttet det her shit i hovedet?

Parse error: syntax error, unexpected T_VARIABLE in /usr/home/whitehat/users/pad/brugersystem/opret.php on line 14

<?
      mysql_connect("localhost", "pad", "lol123");
      mysql_select_db("dommedagn");

      $brugernavn = $_POST[brugernavn];
      $brugernavn = strip_tags($brugernavn);
      $brugernavn = mysql_real_escape_string($brugernavn);

      $kodeord = $_POST[kodeord];
      $kodeord = strip_tags($kodeord);
      $kodeord = mysql_real_escape_string($kodeord);

      $tael = mysql_query("SELECT brugernavn FROM brugere WHERE brugernavn = "$brugernavn"") or die(mysql_error());
      $antal = mysql_num_rows($tael);
      if($antal == 0){

      mysql_query("INSERT INTO brugere (brugernavn, kodeord)VALUES("$brugernavn", "$kodeord")") or die(mysql_error());
      echo "Du er nu oprettet som bruger og kan logge ind her.<br><br><a href="login.html">Login</a>";
      } else {
      echo "Brugernavnet er optaget";
      }
?>
Avatar billede thesheriff Nybegynder
10. juni 2008 - 16:35 #1
Denne linje:

echo "Du er nu oprettet som bruger og kan logge ind her.<br><br><a href="login.html">Login</a>";

Rettes til:

echo "Du er nu oprettet som bruger og kan logge ind her.<br><br><a href=\"login.html\">Login</a>";
Avatar billede beddet Nybegynder
10. juni 2008 - 16:36 #2
Uden at være helt sikker, så kunne det godt være fordi at du på linie 14 der skriver..

$tael = mysql_query("SELECT brugernavn FROM brugere WHERE brugernavn = "$brugernavn"")

Ved at at sige = "$brugernavn" så tror php at din sql sætning er færdig der og brokker sig derfor over resten af din sql sætning.

Brug single quotes i stedet der.

Sådan her kommer den til at se ud

$tael = mysql_query("SELECT brugernavn FROM brugere WHERE brugernavn = '$brugernavn'") or die(mysql_error());
Avatar billede beddet Nybegynder
10. juni 2008 - 16:37 #3
Ja som thesheriff siger, så er det også det samme længere nede ved dine links...du kan enten "escape" ved at sige \" eller også bare bruge single quote (')...jeg bruger selv single quote i stedet.
Avatar billede beddet Nybegynder
10. juni 2008 - 16:42 #4
Doh jeg kan godt mærke at jeg lige et stået op fra min lur :D hehe

Du laver det samme ved din INSERT INTO sætning...ved values...lav double quote om til single quote.
Avatar billede pad Nybegynder
10. juni 2008 - 17:29 #5
Mange tak for hjælpe, måske os muligt at i kan hjælpe mig med min login,
får spyttet :

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /usr/home/whitehat/users/dommedagn/hejsa/login.php:2) in /usr/home/whitehat/users/dommedagn/hejsa/login.php on line 4

Warning: Cannot modify header information - headers already sent by (output started at /usr/home/whitehat/users/dommedagn/hejsa/login.php:2) in /usr/home/whitehat/users/dommedagn/hejsa/login.php on line 21

<?

      session_start();
     
      mysql_connect("localhost", "xxxx", "xxxx");
      mysql_select_db("xxxx");

      $brugernavn = $_POST[brugernavn];
      $brugernavn = strip_tags($brugernavn);
      $brugernavn = mysql_real_escape_string($brugernavn);
      $kodeord = $_POST[kodeord];
      $kodeord = strip_tags($kodeord);
      $kodeord = mysql_real_escape_string($kodeord);
      $tael = mysql_query("SELECT brugernavn FROM brugere WHERE brugernavn = '$brugernavn' AND kodeord = '$kodeord' LIMIT 1") or die(mysql_error());
      $antal = mysql_num_rows($tael);
      if($antal == 1){

      $_SESSION[login] == "true";
      $_SESSION[data] = $brugernavn;
      header("location: profil.php");
      } else {
      echo "Forkert brugernavn eller kodeord";
      }
?>
Avatar billede thesheriff Nybegynder
10. juni 2008 - 17:31 #6
Har du husket at smide det som det allerførste på din side?
Avatar billede pad Nybegynder
10. juni 2008 - 17:32 #7
Hva mener du?
Avatar billede thesheriff Nybegynder
10. juni 2008 - 17:44 #8
Din session skal være sat som det allerførste - inden <head>-sektionen.
Avatar billede pad Nybegynder
10. juni 2008 - 17:46 #9
koden er ikke længere end det der står der så det går jeg da os ud fra den er..
Avatar billede beddet Nybegynder
10. juni 2008 - 17:59 #10
Du skal da gerne have noget html med et input felt...ellers bliver det relativt svært at logge ind :P
Avatar billede pad Nybegynder
10. juni 2008 - 18:06 #11
det har jeg i en html fil ved siden af ? :)
Avatar billede pad Nybegynder
10. juni 2008 - 18:36 #12
<html>
      <body>
      <form action="login.php" method="POST">
      Brugernavn:<br>
      <input type="text" name="brugernavn"><br>
      Kodeord:<br>
      <input type="password" name="kodeord"><br>
      <input type="submit" value="Login">
      </form>
      </body>
      </html>
Avatar billede dkfire Nybegynder
10. juni 2008 - 20:50 #13
Du har ikke et blank linje før <? eller bare et mellemrum ???
Der må intet, jeg mener INTET, være før
<?
    session_start();
Avatar billede pad Nybegynder
11. juni 2008 - 01:07 #14
thanks, det var det der var problemet ;)
Avatar billede thesheriff Nybegynder
11. juni 2008 - 07:56 #15
Godt du fik det løst :)

Smider et svar, hvis du kunne bruge noget af det jeg skrev.
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