0

I am trying to use

  header("Location: http://www.mysite.com/gamecode.php?gameid=$pw");

below is my code.

   <?php
header("Location: http://www.mysite.com/gamecode.php?gameid=$pw");
$con = mysqli_connect("localhost","placeholder","placeholder","placeholder");
 //or die ('unable to connect');

 // Check connection
 if (mysqli_connect_errno())
 {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }


 //create random table name

  $alpha = "abcdefghijklmnopqrstuvwxyz";

  $numeric = "0123456789";
  $special = ".-+=_,!@$#*%<>[]{}";
  $chars = "";

  if (isset($_POST['length'])){
  // if you want a form like above
  if (isset($_POST['alpha']) && $_POST['alpha'] == 'on')
    $chars .= $alpha;

if (isset($_POST['alpha_upper']) && $_POST['alpha_upper'] == 'on')
    $chars .= $alpha_upper;

if (isset($_POST['numeric']) && $_POST['numeric'] == 'on')
    $chars .= $numeric;

if (isset($_POST['special']) && $_POST['special'] == 'on')
    $chars .= $special;

$length = $_POST['length'];
}else{
// default [a-zA-Z0-9]{9}
$chars = $alpha . $numeric;
$length = 6;
 }
$len = strlen($chars);
$pw = '';

 for ($i=0;$i<$length;$i++)
    $pw .= substr($chars, rand(0, $len-1), 1);
  // the finished password
 $pw = str_shuffle($pw);
 //using the $pw variable for the table name
 $sql="CREATE TABLE `" . $pw . "` (
 PID INT NOT NULL AUTO_INCREMENT, 
 PRIMARY KEY(PID),
 Name CHAR(15))";
 if (mysqli_query($con,$sql))
 {
 echo "table was created";
  }
  else
 {
  echo "Did not create table";
 }



  mysqli_close($con);

above is the page i am trying to add the variable to the URL. I do get the the page redirect however it is not adding the header variable to the redirect as it should.

1
  • Change your ' to " as ' will treat $gmid as literal string, if you want a value there, either concatenate the string else use " Commented Aug 26, 2013 at 5:07

6 Answers 6

7

use double quotes instead of single quote, so change to:

header("Location: http://www.yoursite.com/new_page.php?gameid=$gmid");

or

header('Location: http://www.yoursite.com/new_page.php?gameid='.$gmid);

Double quotes, will evaluate variable values before producing the final output, which single quote does not.

Sign up to request clarification or add additional context in comments.

1 Comment

Thanks for your quick post! I wish I could select everyone's answer's you are all right!
4

Try like

header('Location: http://www.yoursite.com/new_page.php?gameid='.$gmid);

You need to change the quotes before the variable or You can also try with double quotes like

header("Location: http://www.yoursite.com/new_page.php?gameid=$gmid");

Comments

4

try this:

header('Location: http://www.yoursite.com/new_page.php?gameid=' . $gmid);

Comments

3

Change your quotes to double quotes.

1 Comment

Why do we change that? Lil explanation will be better here
1

header("Location: http://www.yoursite.com/new_page.php?gameid=$gmid");

see the quotes.... " instead of '.

Comments

1

You have problem with quotes and double quotes: Change your line to this :

 header("Location: http://www.yoursite.com/new_page.php?gameid=$gmid");

or this:

 header("Location: http://www.yoursite.com/new_page.php?gameid=".$gmid);

If you do '$variable' , it will be interpreted as string and :

echo '$variable' ; will show $variable as output . But if you use "$variable" , echo will output value of this variable.

6 Comments

Does using the header require a session?
ok. i am using the example above with the double quotes, it does redirect correctly but its not adding the variable. when i do a simple echo it does echo the variable to the page. (i have to comment out the header) any ideas what would do that?
i was using $pw=$gmid but it wasnt working so i just went with the $pw.. do i need something else?
before header add this line $pw=1; and check if it appears in the link you are redirected to , if its ok,you have problem widh $pw, try to give it a value.
|

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.