Avatar billede saxtus Nybegynder
15. august 2003 - 15:46 Der er 14 kommentarer og
1 løsning

Profilopretning med email retur til bruger

Jeg har et problem som driller lidt.
Jeg skal kunne returnere en mail efter at "brugeren" har udfyldt sin persontlige data og submittet det.
Brugeren skal så derefter modtage en email hvor der står et brugerid og det password brugeren indtastede.

jeg har fundet et andet eksempel her inde som jeg regnede med nemt at kunne tilpasse, men det var ikke sådan lige til.
Her er hvad jeg har:

<?php
if ($submit== "Send"){
  $emne = "Oprettelse af profil på Kalundhobbyen.dk";
  $body = "\n\nDin profil er nu blevet oprettet\n" ;
  $body .= "Du har ikke fået tildelt noget bruger nr. endnu, da databasen ikke virker\n" ;
  $body .= "Din email er: "$_POST[mail]"\n" ;
  $body .= "Dit password er: "$password1,"\n\n" ;
 

  mail($mail, $body, "Reply-to:mail") ;
  echo "Email sendt<br><br>" ;
}
?>
Avatar billede schaefner Juniormester
15. august 2003 - 15:52 #1
Hvad får du af fejl?
Prøv:
<?php
if ($submit == "Send") {
  $emne = 'Oprettelse af profil på Kalundhobbyen.dk';
  $body = "\n\nDin profil er nu blevet oprettet\n";
  $body .= "Du har ikke fået tildelt noget bruger nr. endnu, da databasen ikke virker\n";
  $body .= "Din email er: $_POST[mail]\n";
  $body .= "Dit password er: $password1\n\n";
 

  mail($_POST['mail'],$emne,$body,"Reply-to: mail");
  echo 'Email sendt<br><br>';
}
?>
Avatar billede toleranzen Nybegynder
15. august 2003 - 16:48 #2
Der er fejl i din kode, prøv:

mail($mailadresse,$emne,$body,"Reply-to:mail");
Avatar billede saxtus Nybegynder
15. august 2003 - 23:18 #3
Nu får jeg ingen fejldialog, men der sker dersvære bare ikke noget.

<?php
if (isset($_POST['send'])) {
  $emne = "Oprettelse af profil på Kalundhobbyen.dk";
  $body = "\nDin profil er nu blevet oprettet\n" ;
  $body = "E-mail : " . $_POST['mail'] . "\n" ;
  $body = "Password : " . $_POST['password1'] . "\n\n" ;

  mail($_POST['mail'], $emne, $body, "Reply-to:$_POST[mail]") ;
  echo "Email sendt<br><br>" ;
}
?>
Avatar billede schaefner Juniormester
15. august 2003 - 23:22 #4
Den udskriver heller ikke "Email sendt"?
Avatar billede saxtus Nybegynder
15. august 2003 - 23:37 #5
nej det har du ret i. Jeg undre mig bare, synes ikke at der var spor besværligt at lave noget i den stil sidst
Avatar billede saxtus Nybegynder
15. august 2003 - 23:43 #6
det er er mine indtastningsbokse der har betydning.
de bliver videresendt fra en anden side via en alm form, og det burde jo ikke gøre noget at de bliver valideret med et javascript først.

<input type="text" name="mail" size="20">
<input type="text" name="password1" size="20">
Avatar billede schaefner Juniormester
16. august 2003 - 07:18 #7
Prøv at skrive hele din form
Avatar billede saxtus Nybegynder
16. august 2003 - 07:46 #8
Her er hele formen og det javascript til at validere om de indtastede værdier er korekte

<script type="text/javascript">

function validering(f){
  if(f.navn.value=='')    {       
    alert('Du skal udfylde feltet med dit navn!');
    f.navn.focus();
    return false;
  }

  if(f.adresse.value=='')    {       
    alert('Du skal udfylde feltet med din adresse!');
    f.adresse.focus();
    return false;
  }

  if(f.post.value==''||!f.post.value.match(/^\d{4}$/))    {       
    alert('Der skal indtastes et gyldigt postnr!');
    f.post.focus();
    return false;
  }


  if(f.by.value=='')    {       
    alert('Du skal udfylde feltet med din by!');
    f.by.focus();
    return false;
  }

if(f.tlf.value!=''&&!f.tlf.value.match(/^\d{8}$/))    {       
    alert('Telefonnummer skal angives med 8 cifre!');
    f.tlf.focus();
    return false;
  }


  var regexp = /^[a-z\d_\-]+(\.[a-z\d_\-]+)*@([a-z\d_\-]+\.)+[a-z]{2,4}$/i;
  tekst=f.mail.value.toLowerCase();
  if (!regexp.test(tekst)){
      alert ("Der skal stå en gyldig e-mail adresse i tekst feltet");
      f.mail.focus();
      return false;
  }

  if(f.password1.value=='') 
  {       
    alert('Du skal udfylde feltet med dit password!');
    f.password1.focus();
    return false;
  }
}
</script>

      <form action="opret.php" method="post" onsubmit="return validering(this);">
        <table border="0" cellpadding="0" cellspacing="0" width="541" height="500">
              <tr>
                <td width="120" height="35">Navn</td>
                <td width="148" height="35"><input type="text" name="navn" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">Adresse</td>
                <td width="148" height="35"><input type="text" name="adresse" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">Post nr.</td>
                <td width="148" height="35"><input type="text" name="post" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">By</td>
                <td width="148" height="35"><input type="text" name="by" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">Stedbetegnelse</td>
                <td width="148" height="35"><input type="text" name="sted" size="20"></td>
                <td width="273" height="35">&nbsp;</td>
              </tr>
              <tr>
                <td width="120" height="35">Telefon nr.</td>
                <td width="148" height="35"><input type="text" name="tlf" size="20"></td>
                <td width="273" height="35"></td>
              </tr>
              <tr>
                <td width="120" height="35">E-mail adresse</td>
                <td width="148" height="35"><input type="text" name="mail" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">Password</td>
                <td width="148" height="35"><input type="text" name="password1" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120"></td>
                <td width="148" valign="top"></td>
                <td width="273" align="left" valign="top"><input type="submit" value="Send" name="B1"><input type="reset" value="Nulstil" name="B2"></td>
              </tr>
            </table></form>
Avatar billede schaefner Juniormester
16. august 2003 - 07:54 #9
<td width="273" align="left" valign="top"><input type="submit" value="Send" name="submit"><input type="reset" value="Nulstil" name="B2"></td>
Avatar billede saxtus Nybegynder
17. august 2003 - 08:50 #10
Det virker detsvære heller ikke :(
Avatar billede schaefner Juniormester
17. august 2003 - 14:55 #11
--- html ---

<script type="text/javascript">
function validering(f) {
    if (f.navn.value=='')    {       
        alert('Du skal udfylde feltet med dit navn!');
        f.navn.focus();
        return false;
    }
    if (f.adresse.value=='') {       
        alert('Du skal udfylde feltet med din adresse!');
        f.adresse.focus();
        return false;
    }

    if (f.post.value==''||!f.post.value.match(/^\d{4}$/)) {       
        alert('Der skal indtastes et gyldigt postnr!');
        f.post.focus();
        return false;
    }


    if (f.by.value=='') {       
        alert('Du skal udfylde feltet med din by!');
        f.by.focus();
        return false;
    }

    if (f.tlf.value!=''&&!f.tlf.value.match(/^\d{8}$/)) {       
        alert('Telefonnummer skal angives med 8 cifre!');
        f.tlf.focus();
        return false;
    }


    var regexp = /^[a-z\d_\-]+(\.[a-z\d_\-]+)*@([a-z\d_\-]+\.)+[a-z]{2,4}$/i;
    tekst=f.mail.value.toLowerCase();
    if (!regexp.test(tekst)) {
        alert ('Der skal stå en gyldig e-mail adresse i tekst feltet');
        f.mail.focus();
        return false;
    }

    if (f.password1.value=='') {       
        alert('Du skal udfylde feltet med dit password!');
        f.password1.focus();
        return false;
    }
}
</script>

      <form action="opret.php" method="post" onsubmit="return validering(this);">
      <input type="hidden" name="send" value="1">
        <table border="0" cellpadding="0" cellspacing="0" width="541" height="500">
              <tr>
                <td width="120" height="35">Navn</td>
                <td width="148" height="35"><input type="text" name="navn" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">Adresse</td>
                <td width="148" height="35"><input type="text" name="adresse" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">Post nr.</td>
                <td width="148" height="35"><input type="text" name="post" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">By</td>
                <td width="148" height="35"><input type="text" name="by" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">Stedbetegnelse</td>
                <td width="148" height="35"><input type="text" name="sted" size="20"></td>
                <td width="273" height="35">&nbsp;</td>
              </tr>
              <tr>
                <td width="120" height="35">Telefon nr.</td>
                <td width="148" height="35"><input type="text" name="tlf" size="20"></td>
                <td width="273" height="35"></td>
              </tr>
              <tr>
                <td width="120" height="35">E-mail adresse</td>
                <td width="148" height="35"><input type="text" name="mail" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120" height="35">Password</td>
                <td width="148" height="35"><input type="text" name="password1" size="20"></td>
                <td width="273" height="35">*</td>
              </tr>
              <tr>
                <td width="120"></td>
                <td width="148" valign="top"></td>
                <td width="273" align="left" valign="top"><input type="submit" value="Send"><input type="reset" value="Nulstil"></td>
              </tr>
            </table></form>

--- php ---

<?php
if (isset($_POST['send'])) {
    $emne = 'Oprettelse af profil på Kalundhobbyen.dk';
    $body = "\n\nDin profil er nu blevet oprettet\n";
    $body .= "Du har ikke fået tildelt noget bruger nr. endnu, da databasen ikke virker\n";
    $body .= "Din email er: $_POST[mail]\n";
    $body .= "Dit password er: $password1\n\n";

    mail($_POST['mail'],$emne,$body,"Reply-to: mail");
    echo 'Email sendt<br><br>';
}
?>
Avatar billede saxtus Nybegynder
17. august 2003 - 20:12 #12
virker heller ikke, eller skal den nederste php del være på den side der submitter??
Avatar billede schaefner Juniormester
17. august 2003 - 20:34 #13
nej, den skal være på siden opret.php
Avatar billede saxtus Nybegynder
17. august 2003 - 22:41 #14
det virker heller ikke - tror at jeg laver det på en anden måde i stedet for.
laver et eller andet med at den kontorlere om emailen er brugt først og hvis den ikke er det så gemmer den i databasen og derefter henter fra databasen og emailer tilbage til bruger med brugernavn, password mm.

Har fundet ud af hvordan det med kontrollen skal laves, så må jeg vel se om det er nemmere at få det til at virke når jeg henter dataen fra databasen
Avatar billede saxtus Nybegynder
21. august 2003 - 22:51 #15
Med en del omskrivning af koden fandt jeg selv ud af det, men tak for hjælpen
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