gwolff2005 Posted April 24, 2009 Share Posted April 24, 2009 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?? Quote Link to comment https://forums.phpfreaks.com/topic/155484-solved-error-in-php-by-transferring-data-to-mysql/ Share on other sites More sharing options...
JonnoTheDev Posted April 24, 2009 Share Posted April 24, 2009 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']."'"; ?> Quote Link to comment https://forums.phpfreaks.com/topic/155484-solved-error-in-php-by-transferring-data-to-mysql/#findComment-818154 Share on other sites More sharing options...
gwolff2005 Posted April 24, 2009 Author Share Posted April 24, 2009 thanks neil tha worked.. However no i get the message mysql error. But i have everything right database, etc... would it be better to set up a recordset or what can i do? Quote Link to comment https://forums.phpfreaks.com/topic/155484-solved-error-in-php-by-transferring-data-to-mysql/#findComment-818159 Share on other sites More sharing options...
premiso Posted April 24, 2009 Share Posted April 24, 2009 However no i get the message mysql error. Why not post the MySQL error message so we can help resolve that. Quote Link to comment https://forums.phpfreaks.com/topic/155484-solved-error-in-php-by-transferring-data-to-mysql/#findComment-818306 Share on other sites More sharing options...
gwolff2005 Posted April 24, 2009 Author Share Posted April 24, 2009 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... Quote Link to comment https://forums.phpfreaks.com/topic/155484-solved-error-in-php-by-transferring-data-to-mysql/#findComment-818310 Share on other sites More sharing options...
premiso Posted April 24, 2009 Share Posted April 24, 2009 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). Quote Link to comment https://forums.phpfreaks.com/topic/155484-solved-error-in-php-by-transferring-data-to-mysql/#findComment-818312 Share on other sites More sharing options...
gwolff2005 Posted April 24, 2009 Author Share Posted April 24, 2009 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 Quote Link to comment https://forums.phpfreaks.com/topic/155484-solved-error-in-php-by-transferring-data-to-mysql/#findComment-818314 Share on other sites More sharing options...
premiso Posted April 24, 2009 Share Posted April 24, 2009 $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. Quote Link to comment https://forums.phpfreaks.com/topic/155484-solved-error-in-php-by-transferring-data-to-mysql/#findComment-818323 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.