Jump to content

PHP posting problem


Gavski

Recommended Posts

I have a form that contains a function. i want this function to be activated only when the user reposts the page to itself. (php_self).

 

ie. the user access the page and the function is hidden, the user then inputs data, repost the page and the function is activated.

 

I've tried flagging the function with a variable - $var = 0, then $var = 1 at the end of the page but $var just resets itself to 0 when the page is posted.

 

Sure this is simple but I just cant get it?

 

thanks

Link to comment
https://forums.phpfreaks.com/topic/285426-php-posting-problem/
Share on other sites

Here's my form, it contains a function (really!). I want this function to work only after the form has been posted (not on initial loading). Here PHP reads the value of $token inside the function on loading (setsit to 1) and so executes the function when the page is loaded, there must be a way round this?

 

 

 

<?php

session_start();

$_SESSION['regName'] = $regValue; 

$token = 0;

//here's the function
function doThis()
{ echo "Do this Function";}


if ($token = 1)
{
doThis();
$token = 1;
}
echo $token;


?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" >
<input type="text" name="regName" value="">
<input type="submit">
</form>

Link to comment
https://forums.phpfreaks.com/topic/285426-php-posting-problem/#findComment-1465548
Share on other sites

Sorry here it is again without the glaring error - 

 

<?php

session_start();

$_SESSION['regName'] = $regValue;

$token = 0;
//here's the function
function doThis()
{ echo "Do this Function";}


if ($token = 1)
{
doThis();
}

$token = 1;
echo $token;


?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" >
<input type="text" name="regName" value="">
<input type="submit">
</form>

Link to comment
https://forums.phpfreaks.com/topic/285426-php-posting-problem/#findComment-1465550
Share on other sites

You could use a hidden field to run the function. For example:

 

<?php
function doThis() {
     echo "Do this Function";
}
 
if(isset($_POST['runFunction'])) {
     doThis();
}
?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" >
<input type="text" name="regName" value="">
<input type="hidden" name="runFunction" value="1">
<input type="submit">
</form>
Link to comment
https://forums.phpfreaks.com/topic/285426-php-posting-problem/#findComment-1465556
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.