Avatar billede duracell Nybegynder
16. marts 2002 - 17:02 Der er 43 kommentarer

Hvad mangler jeg???

Hvad mangler jeg???

Jeg ved ikke hvad jeg skal gøre.
Hver gang man sætter et script ind på en site og man har if med i scriptet så kommer denne besked.

---------BESKED---------
Warning: Undefined variable: navn in e:\apache\apache\htdocs\golden-movie.dk\pass.php on line 9

Warning: Undefined variable: password in e:\apache\apache\htdocs\golden-movie.dk\pass.php on line 22
---------BESKED SLUT---------


---------SCRIPT---------
LINIE 9    $get_pass  = mysql_query("SELECT * FROM pass WHERE pass_navn LIKE '$navn' ORDER BY pass_id

Og

LINIE 22      if($password)
---------SCRIPT SLUT---------

Hvad skal man rette i ???
Avatar billede tipsen Nybegynder
16. marts 2002 - 17:03 #1
Jeg går udfra du poster hele linien...

Så skal der afsluttes ordentligt:

$get_pass  = mysql_query("SELECT * FROM pass WHERE pass_navn LIKE '$navn' ORDER BY pass_id");
Avatar billede speedy Nybegynder
16. marts 2002 - 17:05 #2
Det lyder som om PHP er sat op til at vise alle advarsler, og derfor skal du enten ændre det, eller også skal du første gang du bruger en variabel skrive var foran.

altså sådan her i linie 9:

var $get_pass  = mysql_query("SELECT osv.....


/SpEeDy
Avatar billede speedy Nybegynder
16. marts 2002 - 17:07 #3
hvis du har adgang til php.ini skal du ændre linien der starter med

error_reporting=

til

error_reporting=E_NONE


/SpEeDy
Avatar billede tipsen Nybegynder
16. marts 2002 - 17:14 #4
Det er da næsten en sikker metode til ikke at have en jordisk chance for at finde sine php-fejl...
Avatar billede duracell Nybegynder
16. marts 2002 - 17:17 #5
Først til tipsen.
Her er resten at scriptet: $get_pass  = mysql_query("SELECT * FROM pass WHERE pass_navn LIKE '$navn' ORDER BY pass_id DESC");
SORRY
Avatar billede duracell Nybegynder
16. marts 2002 - 17:19 #6
Så til speedy.
Hvor finder man det der php.ini henne ???
Avatar billede duracell Nybegynder
16. marts 2002 - 17:21 #7
man kan ikke sætte var ind, fordi så kommer den med dette svar her:
Parse error: parse error in e:\apache\apache\htdocs\golden-movie.dk\pass.php on line 9
Avatar billede speedy Nybegynder
16. marts 2002 - 17:21 #8
normalt lægger man den i windows-mappen.

/SpEeDy
Avatar billede speedy Nybegynder
16. marts 2002 - 17:22 #9
nå, så huskede jeg forkert (eller blander andre programmeringssprog ind i det :))

/SpEeDy
Avatar billede tipsen Nybegynder
16. marts 2002 - 17:23 #10
hvis den skriver at den ikke kender variablen navn, så er det nok fordi den ikke kender variablen navn.... - og så er det da ikke en løsning bare at fjerne fejlrapporteringen... - det er lidt ligesom en struds der stikker hovedet i en busk...
Avatar billede speedy Nybegynder
16. marts 2002 - 17:26 #11
tipsen>>Tjaa..det kan man godt sige...det var jo også derfor jeg i min første kommentar siger han skal prøve at skrive var foran variablen første gang den bruges.

Men da duracell siger at det ikke virker (og han sidder ved egen server) så kunne han jo slå advarsler fra.

Dette gør man også normalt på en professionel webserver.

/SpEeDy
Avatar billede tipsen Nybegynder
16. marts 2002 - 17:28 #12
ja - hvilket er velegnet til færdige løsninger - da man ikke skal afsløre følsomme oplysninger til brugeren af en fejlet webside - men da ikke i implementeringsfasen, hvor fejlene skal luges ud!!
Avatar billede tipsen Nybegynder
16. marts 2002 - 17:29 #13
duracell: Prøv at smide dit script her på siden - så kan vi vel se om der er fejl i det...
Avatar billede duracell Nybegynder
16. marts 2002 - 17:31 #14
Jeg skal nok smide scriptet på siden om lidt.

kan i ikke fortælle mig hvad jeg skal rette i php.ini

php.ini
---------
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; error_reporting is a bit-field.  Or each number up to get desired error
; reporting level
; E_ALL            - All errors and warnings
; E_ERROR          - fatal run-time errors
; E_WARNING        - run-time warnings (non-fatal errors)
; E_PARSE          - compile-time parse errors
; E_NOTICE          - run-time notices (these are warnings which often result
;                    from a bug in your code, but it's possible that it was
;                    intentional (e.g., using an uninitialized variable and
;                    relying on the fact it's automatically initialized to an
;                    empty string)
; E_CORE_ERROR      - fatal errors that occur during PHP's initial startup
; E_CORE_WARNING    - warnings (non-fatal errors) that occur during PHP's
;                    initial startup
; E_COMPILE_ERROR  - fatal compile-time errors
; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
; E_USER_ERROR      - user-generated error message
; E_USER_WARNING    - user-generated warning message
; E_USER_NOTICE    - user-generated notice message
Avatar billede tipsen Nybegynder
16. marts 2002 - 17:36 #15
Jeg mener (åbenlyst) ikke at du bør rette noget i php.ini - så vil du bare have et script der ikke fungerer uden at have nogen som helst idé om hvorfor det ikke fungerer... - jeg selv har ikke ændret noget som helst mht error reporting i min konfiguration!
Avatar billede duracell Nybegynder
16. marts 2002 - 17:37 #16
vil i se det script ???
Avatar billede tipsen Nybegynder
16. marts 2002 - 17:39 #17
Jeg er på vej ud af døren nu, men post det - og hvis det ikke er fikset når jeg vender tilbage skal jeg nok lige kaste et blik på det...
Avatar billede duracell Nybegynder
16. marts 2002 - 17:40 #18
ok
Avatar billede duracell Nybegynder
16. marts 2002 - 17:40 #19
hvad siger du speedy har du tid til at se på det ???
Avatar billede speedy Nybegynder
16. marts 2002 - 17:41 #20
jeps, jeg skal nok kigge.

/SpEeDy
Avatar billede duracell Nybegynder
16. marts 2002 - 17:46 #21
Her er det så.

---------------------------
<?
        $get_pass  = mysql_query("SELECT * FROM pass WHERE pass_navn LIKE '$navn' ORDER BY pass_id DESC");
    while ($result_pass    = mysql_fetch_array($get_pass))
      {
        $Tid = $result_pass["pass_id"];
        $Tnavn = $result_pass["pass_navn"];
        $Tpass = $result_pass["pass_pass"];
       
       
      }
?>


<?
if($password)
{


if($password!="$Tpass") { echo "Forkert Password eller Brugernavn<br><br>Din IP er logget"; }

else
{
echo ;include("film.php");

}


}
else
{?>
Avatar billede speedy Nybegynder
16. marts 2002 - 17:52 #22
Du kan starte med at lave linien if($password) om til

if(isset($password))

/SpEeDy
Avatar billede duracell Nybegynder
16. marts 2002 - 17:52 #23
ok
Avatar billede duracell Nybegynder
16. marts 2002 - 17:54 #24
nu er der kun fejl i linie 9
Avatar billede speedy Nybegynder
16. marts 2002 - 17:54 #25
et andet problem er at $navn ikke er sat til noget, men du bruger den i din mysql_query.

Den skal altså sættes til et eller andet inden queryen...det kan du gøre sådan her:

if(!isset($navn)){
  $navn = "";
}

/SpEeDy
Avatar billede duracell Nybegynder
16. marts 2002 - 18:00 #26
så skriver den dette her.

Parse error: parse error in e:\apache\apache\htdocs\golden-movie.dk\pass.php on line 36
og det er i den linie hvor der står:


}  33
  34
  35
}  36
else  37
{?>  38
Avatar billede speedy Nybegynder
16. marts 2002 - 18:02 #27
Hvad er det også for noget volapyk for at sige det rent ud :)

Du kan da ikke bare skrive nogle tal sådan uden videre...

/SpEeDy
Avatar billede duracell Nybegynder
16. marts 2002 - 18:05 #28
det er for at vise dig linie numrene.
Avatar billede speedy Nybegynder
16. marts 2002 - 18:09 #29
Hold op jeg sover :)

prøv at rette dine sidste linier til dette:

if($password!="$Tpass") { echo "Forkert Password eller Brugernavn<br><br>Din IP er logget"; }

else
{
echo ;include("film.php");

}
?>

/SpEeDy
Avatar billede speedy Nybegynder
16. marts 2002 - 18:10 #30
altså bare fjern linie 34, 35, 36 og 37 samt den tuborg parantes i linie 38

/SpEeDy
Avatar billede duracell Nybegynder
16. marts 2002 - 18:13 #31
så skriver den dette her.

Parse error: parse error in e:\apache\apache\htdocs\golden-movie.dk\pass.php on line 61

og den se sådan ud: <?}
Avatar billede duracell Nybegynder
16. marts 2002 - 18:15 #32
Her er resten af scriptet:

<?
        $get_pass  = mysql_query("SELECT * FROM pass WHERE pass_navn LIKE '$navn' ORDER BY pass_id DESC");
    while ($result_pass    = mysql_fetch_array($get_pass))
      {
        $Tid = $result_pass["pass_id"];
        $Tnavn = $result_pass["pass_navn"];
        $Tpass = $result_pass["pass_pass"];
       
       
      }
?>


<?
if(!isset($navn)){
  $navn = "";
}


if($password!="$Tpass") { echo "Forkert Password eller Brugernavn<br><br>Din IP er logget"; }

else
{
echo ;include("film.php");

}
?>

<form action=<?=$PHP_SELF?> method=post>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="130" >
<TR>
<TD ALIGN=LIFT VALIGN=TOP><FONT SIZE=-2>&nbsp;&nbsp;&nbsp;&nbsp;Brugernavn</FONT></TD>
</TR>

<TR>
<TD ALIGN=LIFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=text size="17" name=navn></TD>
</TR>

<TR>
<TD ALIGN=LIFT VALIGN=TOP><FONT SIZE=-2>&nbsp;&nbsp;&nbsp;&nbsp;Password:</FONT></TD>
</TR>

<TR>
<TD ALIGN=LIFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=password size="17" name=password></TD>
</TR>

<TR>
<TD ALIGN=LIFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=submit value=login>&nbsp;&nbsp;&nbsp;<input type=reset name=B2 value=Slet></TD>
</TR>
</TABLE>

</form></center>

<?}
?>
Avatar billede speedy Nybegynder
16. marts 2002 - 18:16 #33
Så fjern den :)

hvis dette ikke hjælper, så må du indsætte det igen, og så poste hele koden, eller sende den til mig hvis du ikke vil vise hele koden her på siden...

speedy@espeedy.dk

/SpEeDy
Avatar billede speedy Nybegynder
16. marts 2002 - 18:16 #34
kigger lige på det....

/SpEeDy
Avatar billede speedy Nybegynder
16. marts 2002 - 18:20 #35
Jeg har lige rettet det til som jeg tror du vil have det....

Prøv nu:


<?
    if(!isset($navn)){
        $navn = "";
    }
    $get_pass  = mysql_query("SELECT * FROM pass WHERE pass_navn LIKE '$navn' ORDER BY pass_id DESC");
    while ($result_pass    = mysql_fetch_array($get_pass)){
        $Tid = $result_pass["pass_id"];
        $Tnavn = $result_pass["pass_navn"];
        $Tpass = $result_pass["pass_pass"];
    }

    if($password!="$Tpass"){
        echo "Forkert Password eller Brugernavn<br><br>Din IP er logget";
    } else {
        include("film.php");
    }
?>
<form action="<?=$PHP_SELF?>" method="post">
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="130" >
<TR>
<TD ALIGN=LEFT VALIGN=TOP><FONT SIZE=-2>&nbsp;&nbsp;&nbsp;&nbsp;Brugernavn</FONT></TD>
</TR>

<TR>
<TD ALIGN=LEFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=text size="17" name=navn></TD>
</TR>

<TR>
<TD ALIGN=LEFT VALIGN=TOP><FONT SIZE=-2>&nbsp;&nbsp;&nbsp;&nbsp;Password:</FONT></TD>
</TR>

<TR>
<TD ALIGN=LEFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=password size="17" name=password></TD>
</TR>

<TR>
<TD ALIGN=LEFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=submit value=login>&nbsp;&nbsp;&nbsp;<input type=reset name=B2 value=Slet></TD>
</TR>
</TABLE>

</form></center>


/SpEeDy
Avatar billede duracell Nybegynder
16. marts 2002 - 18:25 #36
så skriver den dette her.

Warning: Undefined variable: password in e:\apache\apache\htdocs\golden-movie.dk\pass.php on line 19

Warning: Undefined variable: Tpass in e:\apache\apache\htdocs\golden-movie.dk\pass.php on line 19

Warning: Failed opening 'film.php' for inclusion (include_path='') in e:\apache\apache\htdocs\golden-movie.dk\pass.php on line 22
Avatar billede speedy Nybegynder
16. marts 2002 - 18:50 #37
Så prøv dette:

<?
    if(!isset($navn)){
        $navn = "";
    }
    if(!isset($password)){
        $password = "";
    }
    if(!isset($Tpass)){
        $Tpass = "";
    }
    $get_pass  = mysql_query("SELECT * FROM pass WHERE pass_navn LIKE '$navn' ORDER BY pass_id DESC");
    while ($result_pass    = mysql_fetch_array($get_pass)){
        $Tid = $result_pass["pass_id"];
        $Tnavn = $result_pass["pass_navn"];
        $Tpass = $result_pass["pass_pass"];
    }

    if($password!="$Tpass"){
        echo "Forkert Password eller Brugernavn<br><br>Din IP er logget";
    } else {
        include("film.php");
    }
?>
<form action="<?=$PHP_SELF?>" method="post">
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="130" >
<TR>
<TD ALIGN=LEFT VALIGN=TOP><FONT SIZE=-2>&nbsp;&nbsp;&nbsp;&nbsp;Brugernavn</FONT></TD>
</TR>

<TR>
<TD ALIGN=LEFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=text size="17" name=navn></TD>
</TR>

<TR>
<TD ALIGN=LEFT VALIGN=TOP><FONT SIZE=-2>&nbsp;&nbsp;&nbsp;&nbsp;Password:</FONT></TD>
</TR>

<TR>
<TD ALIGN=LEFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=password size="17" name=password></TD>
</TR>

<TR>
<TD ALIGN=LEFT VALIGN=TOP>&nbsp;&nbsp;&nbsp;&nbsp;<input type=submit value=login>&nbsp;&nbsp;&nbsp;<input type=reset name=B2 value=Slet></TD>
</TR>
</TABLE>

</form></center>

/SpEeDy
Avatar billede speedy Nybegynder
16. marts 2002 - 18:50 #38
og så skal du huske at lave den fil der hedder film.php

/SpEeDy
Avatar billede duracell Nybegynder
16. marts 2002 - 20:19 #39
Jeg tror du har misforstået min ide med det jeg ville.
Det jeg vil er at man skal kunne logge sig ind når man kommer ind på index.
Den side som hedder film.php skal være den side hvor man kommer ind når man har logget sig ind.
Man skriver sit brugernavn og password og trykker på login og så kommer man ind på filmsiden.
Det er heller ikke til at vide hvad jeg vil.
Avatar billede speedy Nybegynder
16. marts 2002 - 21:03 #40
Jo, det kan jeg godt se....men hvad er problemet nu ?

Virker det ikke som det skal ?

/SpEeDy
Avatar billede duracell Nybegynder
16. marts 2002 - 21:47 #41
Nej ikke helt, fordi når man kommer ind på siden viser den også film.php det skal den først når man har logget sig ind.
Avatar billede speedy Nybegynder
16. marts 2002 - 21:54 #42
Jeg kan ikke se hvad der skulle være galt, men du kan prøve at erstatte din if-sætning med dette:

    if($password == "$Tpass"){
        include("film.php");
    } else {
        echo "Forkert Password eller Brugernavn<br><br>Din IP er logget";
    }


/SpEeDy
Avatar billede speedy Nybegynder
16. marts 2002 - 21:56 #43
ups, glemte at rette fejlen :)

    if($password == "$Tpass" && $password != ""){
        include("film.php");
    } else {
        echo "Forkert Password eller Brugernavn<br><br>Din IP er logget";
    }


/SpEeDy
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