/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Loginsystem/brugeroprettelse -
Fra : Thomas Jørgensen


Dato : 26-05-02 21:30

Hej NG.
Har siddet og leget lidt med php. men er allerede stødt på et problem.
Det drejer sig om jeg har prøvet tilrettet noget kode jeg fandt på
php-builder..
Det er et "registreringssystem". min kode (uddrag af den) ser sådan ud:
<?php
include('database.php');
include('pre.php');
include('user.php');
if (user_isloggedin()) {
user_logout();
$user_name='';
}
if ($submit) {
user_register($user_name,$password1,$password2,$email,$real_name);
}
echo '<H3>Registerer dig</H3>
<P>
Udfyld dette
<P>
<P>
<FORM method=\"POST\" action=\"$PHP_SELF\">
<B>Real Name:</B><BR>
<INPUT TYPE="TEXT" NAME="real_name" SIZE="20" MAXLENGTH="35">
<P>
<B>User Name:</B><BR>
<INPUT TYPE="TEXT" NAME="user_name" VALUE="'. $user_name .'" SIZE="10"
MAXLENGTH="15">
<P>
<INPUT TYPE="SUBMIT" NAME="submit" VALUE="Send oplysninger">
</FORM>';
site_footer();
?>
Men følgende fejl fremkommer:
Notice: Undefined variable: submit in c:\Inetpub\wwwroot\register2.php on
line 12
linie 12 er: if ($submit) {
Der er åbenbart en fejl med "submit".. kan ikke gennemskue hvilken.
Er der en der kan hjælpe ? - håber der er en venlig sjæl...
På forhånd tak
thomas j.



 
 
Per Thomsen (26-05-2002)
Kommentar
Fra : Per Thomsen


Dato : 26-05-02 22:28


"Thomas Jørgensen" <tjodense@tdcadsl.dk> wrote in message
news:3cf14440$0$70361$edfadb0f@dspool01.news.tele.dk...
> Hej NG.
[snip]
> Men følgende fejl fremkommer:
> Notice: Undefined variable: submit in c:\Inetpub\wwwroot\register2.php on
> line 12
> linie 12 er: if ($submit) {
> Der er åbenbart en fejl med "submit".. kan ikke gennemskue hvilken.
[snip]

Mon ikke det er den typiske med at register_globals er 'off' med
standard php.ini efter version 4.2.0.
Prøv med:
if( ($_POST['submit']) {

Kig på dette:
<http://dk.php.net/release_4_1_0.php>

MVH Per Thomsen,
http://www.pert.dk/




Tinky Winky (27-05-2002)
Kommentar
Fra : Tinky Winky


Dato : 27-05-02 00:36

> Men følgende fejl fremkommer:
> Notice: Undefined variable: submit in c:\Inetpub\wwwroot\register2.php on
> line 12
> linie 12 er: if ($submit) {
> Der er åbenbart en fejl med "submit".. kan ikke gennemskue hvilken.
> Er der en der kan hjælpe ? - håber der er en venlig sjæl...
> På forhånd tak
> thomas j.

Det er ikke en decideret fejl, men en, som compileren/parseren også skriver,
notice (notits). Det er bare PHP der er sat til at være meget emsig.

Submit variablen er ikke defineret i din PHP fil, men bliver sendt som en
parameter eller med en form post, til PHP filen.

Du vil få samme "fejl" melding ved at lave en fil med denne eneste linje: <?
echo $message; ?> Der er ikke noget galt med den, det er fx fint hvis man
skriver "domain.com/minfejl.php?message=hej" i sin browser, så vil filen
skrive "hej". Det er irriterende at PHP ikke vil gå igennem med det, når den
stopper filen pga. den notice. Måske ville det hjælpe at deklerære
variablen, men det ved jeg ikke hvordan man gør eller om man overhovedet
kan/skal gøre det i PHP.

Men løsningen er bare at få PHP til ikke at vise notices som fejl. I
windows, hvis du bruger det, skal man ændre noget i php.ini, error reporting
skal ikke rapportere andet en errors og warnings.



Karl Peder Olesen (27-05-2002)
Kommentar
Fra : Karl Peder Olesen


Dato : 27-05-02 21:16

>
>Du vil få samme "fejl" melding ved at lave en fil med denne eneste linje: <?
>echo $message; ?> Der er ikke noget galt med den, det er fx fint hvis man
>skriver "domain.com/minfejl.php?message=hej" i sin browser, så vil filen
>skrive "hej". Det er irriterende at PHP ikke vil gå igennem med det, når den
>stopper filen pga. den notice. Måske ville det hjælpe at deklerære
>variablen, men det ved jeg ikke hvordan man gør eller om man overhovedet
>kan/skal gøre det i PHP.

Du kan tjekke om en variabel er defineret ved at bruge funktionen
"isset":

if (isset($minVariabel))
{
   // gør noget
}

mvh
Karl Peder

>Men løsningen er bare at få PHP til ikke at vise notices som fejl. I
>windows, hvis du bruger det, skal man ændre noget i php.ini, error reporting
>skal ikke rapportere andet en errors og warnings.
>
>


Søg
Reklame
Statistik
Spørgsmål : 177505
Tips : 31968
Nyheder : 719565
Indlæg : 6408554
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste