webForumDet fria alternativet

Script hjälp

PHP

16 svar · 842 visningar · startad av pirate

Medlem sedan aug. 200541 inlägg
Frågan#1

Hej,
Jag har ett litet problem med php script, då jag använder en html form så har jag som action ett php script som ska laddas. Då jag trycker på submit knappen visas inte infon.

<HTML>
      <HEAD>
	<TITLE>HTML Form </TITLE>
      </HEAD>
<BODY>
<FORM ACTION="HandleForm.php" METHOD=POST> 
First Name <INPUT TYPE=TEXT NAME= "FirstName" SIZE=20>
<BR>
Last Name <INPUT TYPE=TEXT NAME= "LastName" SIZE=40>
<BR>
E-mail Ad. <INPUT TYPE= TEXT NAME="Email" SIZE=60>
<BR>
Comments <TEXTAREA NAME="Comments" ROWS=5 COLS=40>
</TEXTAREA>
<BR>
<INPUT TYPE=SUBMIT NAME="SUBMIT" VALUE="Submit!">
</FORM>
</BODY> 
</HTML>

Scriptet är följande:
Vill också säga att jag är ny till allt med php :bire

HTML>
<HEAD>
<TITLE>Form Results </TITLE>
<BODY><?php 
/* This page receives and handles the data generated by "form.html". */ 
print "Your first name is $FirstName.
<BR>\n";.
print "Your last name is $LastName.
<BR>\n";
print "Your E-mail address is $Email.
<BR>\n";
print "This is what you had to say:
<BR>\n $Comments<BR>\n";
?>
 </BODY>
</HTML>

Det jag skulle vilja göra är att spara följande info till en txt fil.

tack på förhand

Medlem sedan juni 20019 519 inlägg
#2
$_POST['FirstName']

får du nog använda istället för $firstName... om du inte vill:

$firstname = $_POST['FirstName'];
osv..

red.

Aha! du ville spara resultatet i en text fil.. och... ska söka lite på php:

http://dk2.php.net/fwrite

kanske är något för dig?

Medlem sedan okt. 20001 285 inlägg
#3

...

Medlem sedan aug. 200541 inlägg
#4

Hej,

Jag är väldigt tacksam för er hjälp men jag har två frågor till :r

1. När jag laddar upp scriptet i servern som jag har i (one.com) och kör html form och ska trycka på submit så visas informationen inte på nästa sida. Så gör jag nåt fel där ??

2. vad ska det innehålla i form.php och hur gör jag om jag vill att det ska sparas genom handleform.php istället ?

Medlem sedan okt. 20001 285 inlägg
#5

...

Medlem sedan okt. 20001 285 inlägg
#6

...

Medlem sedan aug. 200541 inlägg
#7

Hej,

Jag är riktigt tacksam för din hjälp, men problemet kvarstår, det visas inget när jag trycker på "submit" knappen och det sparas heller inget på database.txt. Jag laddat upp filerna på min server där jag har min hemsida (i root mappen).

Medlem sedan juni 200032 967 inlägg
#8

i root mappen

... och där har du rättigheter att skriva filer?

Medlem sedan juli 2001728 inlägg
#9

Tror One.com har register_globals på off. så du kan inte köra:

print "Your first name is $FirstName.

utan du lär använda dig av:

print "Your first name is ". $_POST['FirstName'];
Medlem sedan juli 20023 617 inlägg
#10

tronez skrev:

Tror One.com har register_globals på off. så du kan inte köra:

print "Your first name is $FirstName.

utan du lär använda dig av:

print "Your first name is ". $_POST['FirstName'];

Stämmer!

Medlem sedan aug. 200541 inlägg
#11

Tack alla för Era snälla svar och hjälp. Nu har jag fått det att funka men jag har ett litet problem kvar.

Hoppas jag inte bli för tjatig nu :r

Jag har använt mig av koden

<?php
if ($_POST['a'] == "save") {
    
    // from php.net -----
    $myFile = $_SERVER['DOCUMENT_ROOT'] . "/database.txt";
    
    // if (file_exists($myFile)) {
    
    // check all input...
    // $IP = $_SERVER['REMOTE_ADDR'];
    
    $fh = fopen($myFile, 'a') or die("Error!!");
    fwrite($fh, $_POST['FirstName']."\n");
    fwrite($fh, $_POST['LastName']."\n");
    fwrite($fh, $_POST['Email']."\n");
    fwrite($fh, $_POST['Comments']."\n");
    // fwrite($fh, $IP."\n");
    fwrite($fh, "---------------------\n");
    fclose($fh);
    // ---------------
    
    unset($_POST['FirstName'],$_POST['LastName'],$_POST['Email'],$_POST['Comments']);

    header("location:form.php?a=thankyou");
    exit;
    // }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sv" lang="sv">
<head>

<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="cache-control" content="no-cache" />
<?php
if ($_POST['a'] == "thankyou") {
    ?>
    <meta http-equiv="refresh" content="5; url=<?php echo $_SERVER['PHP_SELF'];?>" />
    <?php
}
?>
<title>my cool form</title>
</head>
<body>

<?php
switch ($_POST['a'])
{

    case "check":
    ?>
<h1>Your info</h1>
<p>Is this information correct?</p>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">

<p>First name: <?php echo $_POST['FirstName']; ?></p>
<p>last name: <?php echo $_POST['LastName']; ?></p>
<p>You email: <?php echo $_POST['Email']; ?></p>
<p>Comments: <?php echo $_POST['Comments']; ?></p>

<input type="hidden" name="FirstName" value="<?php echo $_POST['FirstName']; ?>" />
<input type="hidden" name="FirstName" value="<?php echo $_POST['LastName']; ?>" />
<input type="hidden" name="FirstName" value="<?php echo $_POST['Email']; ?>" />
<input type="hidden" name="FirstName" value="<?php echo $_POST['Comments']; ?>" />

<input type="hidden" name="a" value="save" />

<input type="submit" value="Yes, Continue" />

</form>

    <?php
    break;
    case "thankyou":
    ?>
    
    <h1>Thank you!</h1>
    <p>Text..</p>
    
    <?php
    break;
    default:
    ?>
    <h1>Comment form</h1>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">

<p>First Name:<br />
<input type=text name="FirstName" size="20" value="<?php echo $_POST['FirstName']; ?>" />
</p>

<p>Last Name:<br />
<input type=text name="LastName" size="40" value="<?php echo $_POST['LastName']; ?>" />
</p>

<p>E-mail:<br />
<input type= text name="Email" size="60" value="<?php echo $_POST['Email']; ?>" />
</p>

<p>Comments:<br />
<textarea name="Comments" rows="5" cols="40">
    <?php echo $_POST['Comments']; ?>
</textarea>
</p>
<input type="hidden" name="a" value="check" />
<p><input type="submit" value="submit!" /></p>

</form>

    <?php
}
?>
</body>
</html>

Problemet är att den sparar/skriver till database.txt bara det som skrivs i comments.
Kan någon se något fel ??

Återigen tack.

Medlem sedan jan. 20023 327 inlägg
#12

/red glöm detta, jag var på fel spår här...

Medlem sedan juli 20023 617 inlägg
#13

Du har name="FirstName" på alla dina input. Är det riktigt rätt?

Medlem sedan juni 200032 967 inlägg
#14

När man ska bekräfta att man fyllt i rätt uppgifter har du gett alla hiddenfält samma namn:

<input type="hidden" [b]name="FirstName"[/b] value="<?php echo $_POST['FirstName']; ?>" /> 
<input type="hidden" [b]name="FirstName"[/b] value="<?php echo $_POST['LastName']; ?>" /> 
<input type="hidden" [b]name="FirstName"[/b] value="<?php echo $_POST['Email']; ?>" /> 
<input type="hidden" [b]name="FirstName"[/b] value="<?php echo $_POST['Comments']; ?>" />

mvh

Medlem sedan jan. 20023 327 inlägg
#15

fiddler och @anders har rätt

Ändra:

<input type="hidden" name="FirstName" value="<?php echo $_POST['FirstName']; ?>" />
<input type="hidden" name="FirstName" value="<?php echo $_POST['LastName']; ?>" />
<input type="hidden" name="FirstName" value="<?php echo $_POST['Email']; ?>" />
<input type="hidden" name="FirstName" value="<?php echo $_POST['Comments']; ?>" />

Till:

<input type="hidden" name="FirstName" value="<?php echo $_POST['FirstName']; ?>" />
<input type="hidden" name="LastName" value="<?php echo $_POST['LastName']; ?>" />
<input type="hidden" name="Email" value="<?php echo $_POST['Email']; ?>" />
<input type="hidden" name="Comments" value="<?php echo $_POST['Comments']; ?>" />
Medlem sedan aug. 200541 inlägg
#16

Tack så hemskt mycket för Er hjälp, uppskattas verkligen!!

Medlem sedan okt. 20001 285 inlägg
#17

...

264 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)