Avatar billede hojben Novice
01. september 2004 - 21:32 Der er 18 kommentarer og
1 løsning

Notice: Undefined variable: PHP_SELF in

Har lige flyttet www.klaverportalen.dk til egen server, installeret PHP og får denne fejl:

Notice: Undefined variable: PHP_SELF in send.php on line 17
>

I send.php står der følgende:
<form name="form1" method="post" action=<? echo $PHP_SELF; ?>>

Hvad er der galt?
Avatar billede dennismp Nybegynder
01. september 2004 - 21:59 #1
Du skal bruge $_SERVER['PHP_SELF']; istedet, da register_globals ikke er slået til pr. default mere.

Du kan self bare:
$PHP_SELF =$_SERVER['PHP_SELF'];
Avatar billede hojben Novice
01. september 2004 - 22:10 #2
Bingo.... Men der kommer så ikke noget frem.. er der noget specielt i PHP.ini jeg skal rette til? Mener at kunne huske noget om den fil.
Avatar billede hojben Novice
01. september 2004 - 22:10 #3
med hensyn til mail that is..
Avatar billede dennismp Nybegynder
01. september 2004 - 22:22 #4
Hvis du bruger windows, så skal du rette smtp info (søg på det, der er et par stykker). Hvis du ikke bruger windows, burde det virke uden ændringer.
Avatar billede hojben Novice
01. september 2004 - 23:10 #5
fandt det nedenstående:

[mail function]
; For Win32 only.
SMTP = vip.cybercity.dk ; for Win32 only
smtp_port = 25
sendmail_from= michael@klaverportalen.dk ; for Win32 only

og rettede det til men ingen mail :(
Avatar billede dennismp Nybegynder
02. september 2004 - 09:51 #6
Det ser rigtig ud.. Hvordan ser din kode ud?
Avatar billede hojben Novice
02. september 2004 - 16:33 #7
http://www.klaverportalen.dk/send.php

Source:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="/css/general.css">
<script language="JavaScript">
<!--
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
//-->
</script>
</head>

<body bgcolor="#003366" text="#FFFFFF" link="#FFFFFF" class="text" vlink="#FFFFFF" alink="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">

<form name="form1" method="post" action=<? echo $PHP_SELF =$_SERVER['PHP_SELF']; ?>>
  <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center" class="text">
    <tr>
      <td width="45%">Firma:</td>
      <td width="55%">
        <input type="text" name="firma" size="40">
      </td>
    </tr>
    <tr>
      <td width="45%">Kontaktperson:</td>
      <td width="55%">
        <input type="text" name="navn" size="40">
      </td>
    </tr>
    <tr>
      <td width="45%">Adresse:</td>
      <td width="55%">
        <input type="text" name="adresse1" size="40">
      </td>
    </tr>
    <tr>
      <td width="45%">Adresse:</td>
      <td width="55%">
        <input type="text" name="adresse2" size="40">
      </td>
    </tr>
    <tr>
      <td width="45%">Postnummer og By:</td>
      <td width="55%">
        <input type="text" name="postnr" size="3">
        &nbsp;
        <input type="text" name="by" size="31">
      </td>
    </tr>
    <tr>
      <td width="45%" height="11">Email:</td>
      <td width="55%" height="11">
        <input type="text" name="email" size="40">
      </td>
    </tr>
    <tr>
      <td width="45%">Link til eksisterende hjemmeside:</td>
      <td width="55%"><input type="text" name="link" size="40"> </td>
    </tr>
    <tr>
      <td width="45%">Kontakt mig for hjemmeside:</td>
      <td width="55%">
        <input type="checkbox" name="kontaktes" value="checkbox">
      </td>
    </tr>
    <tr>
      <td width="45%">&nbsp;</td>
      <td width="55%">
        <input type="submit" name="Send" value="Send tilmelding">
        <input type="reset" name="slet" value="Slet">
      </td>
    </tr>
  </table>
</form>
<?
if (isset($firma) && isset($navn) && isset($email)) {
    mail("postmaster@klaverportalen.dk", "Mail fra hjemmesiden", "Firma: $firma\nNavn: $adresse1\nAdresse: $adresse2\nPostnr.: $postnr\nBy: $by\nEmail: $link\nLink: $email\n$kontaktes", "From:$email");
      echo "Din tilmelding er sendt og vi vil kontakte Dem snarest muligt.";
} else{
    echo "<center>Udfyld venligst alle felter</center>";
?>

    <?PHP
}
?>
<br>
<a href="#" onClick="MM_openBrWindow('/hjemmeside.htm','','width=400,height=400')">Hjemmeside-info??</a>
</body>
</html>
Avatar billede dennismp Nybegynder
02. september 2004 - 16:45 #8
Ret
" action=<? echo $PHP_SELF =$_SERVER['PHP_SELF']; ?>>

til:
" action=<? echo $_SERVER['PHP_SELF']; ?>>

Og når du bruger variablerne, fx $firma, så skal du skrive
$_POST['firma'] istedet. Det samme gælder de andre elementer i din form.
Avatar billede hojben Novice
02. september 2004 - 18:54 #9
Har ændret variablerne til:

<?
if (isset($firma) && isset($navn) && isset($email)) {
    mail("michael@klaverportalen.dk", "Mail fra hjemmesiden", "Firma: $_POST['firma']\nNavn: $_POST['adresse1']\nAdresse:

$_POST['adresse2']\nPostnr.: $_POST['postnr']\nBy: $_POST['by']\nEmail: $_POST['link']\nLink: $_POST['email']\n$kontaktes",

"From:$_POST['email']");
      echo "Din tilmelding er sendt og vi vil kontakte Dem snarest muligt.";
} else{
    echo "<center>Udfyld venligst alle felter</center>";
?>

Men nu får jeg en fejl:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in D:\www\www.klaverportalen.dk\wwwroot\send.php on line 78

Og nu fatter jeg slet ikke noget ;o(
Avatar billede hojben Novice
02. september 2004 - 18:55 #10
og <form name="form1" method="post" action=<? echo $_SERVER['PHP_SELF']; ?>>
Avatar billede dennismp Nybegynder
02. september 2004 - 19:35 #11
if (isset($firma) && isset($navn) && isset($email)) {

skal også rettes til fx.

if(!empty($_POST['firma']) && !empty($_POST['navn']) && !empty($_POST['email']) ) {

linje 78 ? hvilken linje er det?
Avatar billede hojben Novice
02. september 2004 - 19:45 #12
Nu er det rettet.

Men nu kommer fejlen i linje 77 som er:

mail("michael@klaverportalen.dk", "Mail fra hjemmesiden", "Firma: $_POST['firma']\nNavn: $_POST['adresse1']\nAdresse: $_POST['adresse2']\nPostnr.: $_POST['postnr']\nBy: $_POST['by']\nEmail: $_POST['link']\nLink: $_POST['email']\n$kontaktes", "From:$_POST['email']");
Avatar billede dennismp Nybegynder
02. september 2004 - 19:52 #13
istedet for $_POST['email'] så prøv med: {$_POST['email']}

(også for de andre; firma, adresse1 osv)
Avatar billede hojben Novice
02. september 2004 - 20:09 #14
nu får jeg:

Parse error: syntax error, unexpected T_STRING in send.php on line 78

76:
<?if(!empty($_POST['firma']) && !empty($_POST['navn']) && !empty($_POST['email']) ) {
77:
    mail("michael@klaverportalen.dk", "Mail fra hjemmesiden", "Firma: {$_POST['firma']}\nNavn: {$_POST['adresse1']}\nAdresse: {$_POST['adresse2']}\nPostnr.: {$_POST['postnr']}\nBy: {$_POST['by']}\nEmail: {$_POST['link']}\nLink: {$_POST['email']}\n$kontaktes", "From:{$_POST['email']};
78:
      echo "Din tilmelding er sendt og vi vil kontakte Dem snarest muligt.";
79:
} else{

80:
    echo "<center>Udfyld venligst alle felter</center>";

81:
?>
Avatar billede dennismp Nybegynder
02. september 2004 - 21:24 #15
prøv med
mail("michael@klaverportalen.dk", "Mail fra hjemmesiden", "Firma: {$_POST['firma']}\nNavn: {$_POST['adresse1']}\nAdresse: {$_POST['adresse2']}\nPostnr.: {$_POST['postnr']}\nBy: {$_POST['by']}\nEmail: {$_POST['link']}\nLink: {$_POST['email']}\n$kontaktes", "From:{$_POST['email']}");
Avatar billede hojben Novice
02. september 2004 - 21:28 #16
DU er en knag.... takker mange gange :)

Smed 30 point oveni :)
Avatar billede hojben Novice
02. september 2004 - 21:28 #17
smid lige et svar
Avatar billede dennismp Nybegynder
02. september 2004 - 21:37 #18
Så lykkedes det :)

Kom emailen også frem?
Avatar billede hojben Novice
02. september 2004 - 21:45 #19
jepper alt er i sin fineste orden :)
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