Jump to content

Recommended Posts

Hi guys

 

I am stucked: I develop a test where all values are ADDED on top of each other in mysql...

 

This is now my code:

 

<?php require_once('Connections/Login.php'); ?>
<?php
session_start();
?>
<?php 
//You will need to update all the below variables 
$mysqlhost = "localhost"; 
$mysqluser = "guntmar"; 
$mysqlpass = "je20sa05"; 
$mysqldb = "guntmar"; 
$mysqltable = "users"; 
$username = "site username"; 

// End Variables 

mysql_connect($mysqlhost, $mysqluser, $mysqlpass); 
mysql_select_db($mysqldb); 

$query = "SELECT * FROM " . $mysqltable . " WHERE username='" . $username . "'"; 

$result = mysql_query($query) or die("There was a mysql error"); 
while($row = mysql_fetch_array($result)){ 
    $currentpo = $row['resultspo']; 
    $currentmo = $row['resultsmo']; 
} 

$pagepo = ($_POST['po1'] + $_POST['po4']); 
$pagemo = ($_POST['mo2'] + $_POST['mo3']); 

$newpo = ($currentpo + $pagepo); 
$newmo = ($currentmo + $pagemo); 

$query = "UPDATE " . $mysqltable . " SET resultspo = '" . $newpo . "', resultsmo = '" . $newmo . "' WHERE username = '" . $username . "'"
AND `id` = '.$_SESSION['id']'; 

mysql_query($query) or die("There was a mysql error"); 

header('Location: passiontest2.php');  //Relative or absolute path to your next page. 

?> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Your Passion Test</title>
<style type="text/css">
<!--
.style1 {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
font-weight: bold;
color: #000033;
}
.style3 {font-family: Verdana, Arial, Helvetica, sans-serif}
.style4 {
font-size: 20px;
color: #996600;
}
-->
</style>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
  <table width="699" border="0" align="center" cellspacing="5" class="style1">
    <tr>
      <td colspan="3"><div align="center"><span class="style4">Your Passion Test</span></div></td>
    </tr>
    <tr>
      <td width="24"> </td>
      <td width="429"> </td>
      <td width="220"><div align="right">Saturday, 03/28/09</div></td>
    </tr>
    <tr>
      <td> </td>
      <td> </td>
      <td><div align="right"><?php echo $_SESSION['MM_firstname']; ?></div></td>
    </tr>
    <tr>
      <td> </td>
      <td> </td>
      <td><div align="right"></div></td>
    </tr>
    <tr>
      <td> </td>
      <td> </td>
      <td> </td>
    </tr>
    <tr>
      <td>1</td>
      <td><strong>I like talking to people. </strong><br />
          </b></td>
      <td><div align="left">
          <input name="po1" type="radio" value="0" />
        0
        <input name="po1" type="radio" value="1" />
        1
        <input name="po1" type="radio" value="2" />
        2
        <input name="po1" type="radio" value="3" />
        3
        <input name="po1" type="radio" value="4" />
        4
        <input name="po1" type="radio" value="5" />
        5</div></td>
    </tr>
    <tr>
      <td>2</td>
      <td>It is important for me what other people think. </td>
      <td><p>
          <label></label>
          <label></label>
          <input name="mo2" type="radio" value="0" />
        0
        <input name="mo2" type="radio" value="1" />
        1
        <input name="mo2" type="radio" value="2" />
        2
        <input name="mo2" type="radio" value="3" />
        3
        <input name="mo2" type="radio" value="4" />
        4
        <input name="mo2" type="radio" value="5" />
        5<br />
        <br />
      </p></td>
    </tr>
    <tr>
      <td>3</td>
      <td class="style1">My level of excitement is high right now. </td>
      <td><p>
          <label></label>
          <input name="mo3" type="radio" value="0" />
        0
        <input name="mo3" type="radio" value="1" />
        1
        <input name="mo3" type="radio" value="2" />
        2
        <input name="mo3" type="radio" value="3" />
        3
        <input name="mo3" type="radio" value="4" />
        4
        <input name="mo3" type="radio" value="5" />
        5<br />
      </p></td>
    </tr>
    <tr>
      <td>4</td>
      <td>I like solving mathematical tasks. </td>
      <td><input name="po4" type="radio" value="0" />
        0
        <input name="po4" type="radio" value="1" />
        1
        <input name="po4" type="radio" value="2" />
        2
        <input name="po4" type="radio" value="3" />
        3
        <input name="po4" type="radio" value="4" />
        4
        <input name="po4" type="radio" value="5" />
        5</td>
    </tr>
  </table>
  <p align="center">
    <input name="Submit" type="submit" class="style1" value="go on" />
  </p>
</form>
</body>
</html>

 

but i get the following error

Parse error: syntax error, unexpected '=' in /home/guntmar/public_html/passiontest.php on line 34

What is wrong??

 

This line:

$query = "UPDATE " . $mysqltable . " SET resultspo = '" . $newpo . "', resultsmo = '" . $newmo . "' WHERE username = '" . $username . "'"
AND `id` = '.$_SESSION['id']'; 

 

<?php
$query = "UPDATE ".$mysqltable." SET resultspo = '".$newpo."', resultsmo = '".$newmo."' WHERE username = '".$username."' AND id = '".$_SESSION['id']."'";
?>

The code looks the following (thanks to your help premiso):

 

<?php require_once('Connections/Login.php'); ?>
<?php
session_start();
?>
<?php
//You will need to update all the below variables
$mysqlhost = "localhost";
$mysqluser = "guntmar";
$mysqlpass = "je20sa05";
$mysqldb = "guntmar";
$mysqltable = "users";
$username = "username";

// End Variables

mysql_connect($mysqlhost, $mysqluser, $mysqlpass);
mysql_select_db($mysqldb);

$query = "SELECT * FROM " . $mysqltable . " WHERE username='" . $username . "'";

$result = mysql_query($query) or die("There was a mysql error");
while($row = mysql_fetch_array($result)){
    $currentpo = $row['resultspo'];
    $currentmo = $row['resultsmo'];
}

function showForm () {
    echo <<<SHOWFORM
<form id="form1" name="form1" method="post" action="">
  <table width="699" border="0" align="center" cellspacing="5" class="style1">
    <tr>
      <td colspan="3"><div align="center"><span class="style4">Your Passion Test</span></div></td>
    </tr>
    <tr>
      <td width="24"> </td>
      <td width="429"> </td>
      <td width="220"><div align="right">Saturday, 03/28/09</div></td>
    </tr>
    <tr>
      <td> </td>
      <td> </td>
      <td><div align="right">$_SESSION[MM_firstname]</div></td>
    </tr>
    <tr>
      <td> </td>
      <td> </td>
      <td><div align="right"></div></td>
    </tr>
    <tr>
      <td> </td>
      <td> </td>
      <td> </td>
    </tr>
    <tr>
      <td>1</td>
      <td><strong>I like talking to people. </strong><br />
          </b></td>
      <td><div align="left">
          <input name="po1" type="radio" value="0" />
        0
        <input name="po1" type="radio" value="1" />
        1
        <input name="po1" type="radio" value="2" />
        2
        <input name="po1" type="radio" value="3" />
        3
        <input name="po1" type="radio" value="4" />
        4
        <input name="po1" type="radio" value="5" />
        5</div></td>
    </tr>
    <tr>
      <td>2</td>
      <td>It is important for me what other people think. </td>
      <td><p>
          <label></label>
          <label></label>
          <input name="mo2" type="radio" value="0" />
        0
        <input name="mo2" type="radio" value="1" />
        1
        <input name="mo2" type="radio" value="2" />
        2
        <input name="mo2" type="radio" value="3" />
        3
        <input name="mo2" type="radio" value="4" />
        4
        <input name="mo2" type="radio" value="5" />
        5<br />
        <br />
      </p></td>
    </tr>
    <tr>
      <td>3</td>
      <td class="style1">My level of excitement is high right now. </td>
      <td><p>
          <label></label>
          <input name="mo3" type="radio" value="0" />
        0
        <input name="mo3" type="radio" value="1" />
        1
        <input name="mo3" type="radio" value="2" />
        2
        <input name="mo3" type="radio" value="3" />
        3
        <input name="mo3" type="radio" value="4" />
        4
        <input name="mo3" type="radio" value="5" />
        5<br />
      </p></td>
    </tr>
    <tr>
      <td>4</td>
      <td>I like solving mathematical tasks. </td>
      <td><input name="po4" type="radio" value="0" />
        0
        <input name="po4" type="radio" value="1" />
        1
        <input name="po4" type="radio" value="2" />
        2
        <input name="po4" type="radio" value="3" />
        3
        <input name="po4" type="radio" value="4" />
        4
        <input name="po4" type="radio" value="5" />
        5</td>
    </tr>
  </table>
  <p align="center">
    <input name="Submit" type="submit" class="style1" value="go on" />
  </p>
</form>
SHOWFORM;
}//Close showForm()
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Your Passion Test</title>
<style type="text/css">
<!--
.style1 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 11px;
    font-weight: bold;
    color: #000033;
}
.style3 {font-family: Verdana, Arial, Helvetica, sans-serif}
.style4 {
    font-size: 20px;
    color: #996600;
}
-->
</style>
</head>

<body>
<?php 
if (!isset($_POST['Submit'])) {
showForm();
} else {
$pagepo = ($_POST['po1'] + $_POST['po4']);
$pagemo = ($_POST['mo2'] + $_POST['mo3']);

$newpo = ($currentpo + $pagepo);
$newmo = ($currentmo + $pagemo);
} 
$query = "UPDATE ".$mysqltable." SET resultspo = '".$newpo."', resultsmo = '".$newmo."' WHERE username = '".$username."' AND id   '".$_SESSION['id']."'";

mysql_query($query) or die("There was a mysql error");
//JavaScript page redirect...
echo '<script>location.href="passiontest2.php"</script>'
// Close if/else

?>
</body>
</html>

 

It shwos the text and everything but it says as well. There was a mysql error. I dont know why, because I wrote all the things which were necessary in ther. Anyone an idea. By the way the same error pops up, when I press the button...

 

 

Let's give the SQL error a better look and feed you out helpful information:

 

$query = "UPDATE ".$mysqltable." SET resultspo = '".$newpo."', resultsmo = '".$newmo."' WHERE username = '".$username."' AND id   '".$_SESSION['id']."'";

mysql_query($query) or die("There was a mysql error<br />Query: {$query}<br />Error Returned: " . mysql_error());

 

Modify that and report what it states. My bet, is that the id is missing the equals is causing the problem. So try changing this and see if that helps:

$query = "UPDATE ".$mysqltable." SET resultspo = '".$newpo."', resultsmo = '".$newmo."' WHERE username = '".$username."' AND id =  '".$_SESSION['id']."'";

 

If not add the better error reporting I showed (should only be used in development environment).

 

it says:

 

There was a mysql error

Query: UPDATE users SET resultspo = '', resultsmo = '' WHERE username = 'username' AND id ''

Error Returned: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '''' at line 1

$newpo, $newmo, $username and $_SESSION['id'] were not set. Also you did not add the = after the id part like I suggested.

But basically your variables are not being assigned a value like you are expecting them to. 

[code=php:0]} else {
   $pagepo = ($_POST['po1'] + $_POST['po4']);
   $pagemo = ($_POST['mo2'] + $_POST['mo3']);

   $newpo = ($currentpo + $pagepo);
   $newmo = ($currentmo + $pagemo);

   $query = "UPDATE ".$mysqltable." SET resultspo = '".$newpo."', resultsmo = '".$newmo."' WHERE username = '".$username."' AND id = '".$_SESSION['id']."'";

   mysql_query($query) or die("There was a mysql error<br />Query: {$query}<br />Error Returned: " . mysql_error());
   //JavaScript page redirect...
   echo '<script>location.href="passiontest2.php"</script>'
}
// Close if/else

?>

 

Change that part, as the query was running even if the condition was true due to the fact it was not inside the else brackets.

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • 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.