Kan man ikke lave en form fra MySQL output?

Tags:    php

Hej

Jeg har nogle sider som bliver genereret fra en MySQL database. Noget af sideindholdet er ren HTMLkode der er indtastet i denne database.

F.eks. har jeg en form der ser således ud:
< form action="scripts/send_mail.php" method="POST" >< div align="left" >Indtast dit navn:< br >< input type="text" size="30" name="contents" >< p >Indtast din e-mail adresse:< br/ >< input type="text" size="30" name="navn" >< br >< input type="submit" name="B1" value="Send" >< /div >< /form >

(jeg har set luft ind med vilje)

- alt dette bliver sat ind i mit browser vindue som et "echo" af en php function. Det virker også så langt som til at mine form-inputs dukker op på skærmen. MEN... når så mit send_mail script skal til at fødes fra denne viste forms output, så går det galt. Scriptet får tilsyneladende intet ind, men det bliver dog kaldt!

Nøjagtigt samme script fungerer perfekt på andre af mine sites, men der ligger BÅDE form og script som filer.

Hvad er galt?

Mvh
Gunnar



Nå, det viser sig nu, at outputtet faktsik kommer fint over i min sendmail.php fil. Så tilsyneladende er problemet noget i forbindelse med afsendelse af email fra min indbyggede mailserver...men det er godt nok underligt.

Jeg bruger dette script:

<?php
$name = $_REQUEST['name'];
$email = $_REQUEST['email'];

echo $name;
echo $email;

mail("email@adresse.dk","Emne", $name, "From: $email");
?>

- de to echo linjer var bare for at tjekke at der rent faktisk kom det over i scriptet der skulle...

Jeg får denne fejl når jeg forsøger at afsende:
Warning: Cannot modify header information - headers already sent by (output started at /Users/gunnar/Sites/scripts/send_mail.php:3) in /Users/gunnar/Sites/scripts/send_mail.php on line 4

Hvad er los mon?

Mvh
Gunnar



Nå, det viser sig nu, at outputtet faktsik kommer fint over i min sendmail.php fil. Så tilsyneladende er problemet noget i forbindelse med afsendelse af email fra min indbyggede mailserver...men det er godt nok underligt.

Jeg bruger dette script:

<?php
$name = $_REQUEST['name'];
$email = $_REQUEST['email'];

echo $name;
echo $email;

mail("email@adresse.dk","Emne", $name, "From: $email");
?>

- de to echo linjer var bare for at tjekke at der rent faktisk kom det over i scriptet der skulle...

Jeg får denne fejl når jeg forsøger at afsende:
Warning: Cannot modify header information - headers already sent by (output started at /Users/gunnar/Sites/scripts/send_mail.php:3) in /Users/gunnar/Sites/scripts/send_mail.php on line 4

Hvad er los mon?

Mvh
Gunnar

prøv at rette:
$name = $_REQUEST['name'];
$email = $_REQUEST['email'];
til:
$name = $_POST['name'];
$email = $_POST['email'];


Hvis det ikke virker så prøv:
<?php
$name = $_REQUEST['name'];
$email = $_REQUEST['email'];
if(($name == "") || ($name == NULL)){
echo "Der er en fejl";
}else{
echo $name;
echo $email;
mail("email@adresse.dk","Emne", $name, "From: $email");
}
?>

Og se hvad den skriver
-----
Nunc Tutus Exitus Computarus

[Redigeret d. 30/04-04 18:32:21 af PHP-Nørden]

[Redigeret d. 30/04-04 18:32:41 af PHP-Nørden]



- testet! Men det virker ikke.

Jeg tror måske at problemet er, at selve mail funktionen ikke kører som den skal. Det underlige er bare, at mit mail program bruger selvsamme "localhost sendmail" til SMTP host.

Hvordan kan man teste mail funktionen?

Mvh
Gunnar



- testet! Men det virker ikke.

Jeg tror måske at problemet er, at selve mail funktionen ikke kører som den skal. Det underlige er bare, at mit mail program bruger selvsamme "localhost sendmail" til SMTP host.

Hvordan kan man teste mail funktionen?

Mvh
Gunnar


Ved at lave en PHP-fil, hvor der bare er en mail-funktion fx.

<?php

$din_mail = "din@emailadresse.her";

mail("".$din_mail."", "Test", "Her er en test, om den kan sende en mail", "From: ".$din_mail."");

?>



t