It appears you have not yet registered with DEVPPL. To register please click here... (it's fast, easy and free!)

Forum

Log In Sponsors
Board index Programming JavaScript Forum

Stopping a cookie from saving certain data in a form

Stopping a cookie from saving certain data in a form

Postby benzen78 on Wed Feb 20, 2008 11:32 pm

I'm running a script in PHP that basically displays a form, I'm using php because it pulls 4 email addresses from MySQL table and inserts them into an email field (Shown in blue text on the script).

My question is:

At the moment the data is saved in a cookie when the save button is pressed. My problem is that the cookie script saves all of the forms data including the email addresses. So even if these email addresses are changed in the SQL table the cookie will bring back the old addresses!!

Is there any way to stop this from happening?? Can the cookie script (Shown in red text) be modified to ignore the form fields Email1, Email2, Email3 and Email4?

I'm thinking because these fields are the last 4 in the form I should be able to stop the cookie array before it gets to them?? Is this possible?

Any help would be greatfully received..

Thanks

Ben

Code: Select all
<?php
$db_host = "";
$username = "";
$password = "";
$DB_name = "";
$chan = mysql_connect ($db_host, $username, $password);
mysql_select_db ($DB_name, $chan);

echo "<HTML>
<HEAD>
<SCRIPT language=JavaScript>

[color=red]function eraseCookie(frm) {
            var formname = frm.name;
            var today = new Date();
      var exp   = new Date(today.getTime()-1*24*60*60*1000);
      var string = 'formname=' + formname + '|';
      var cookieName = formname;
setCookie(cookieName, string, exp);
}
function saveSelections(frm) {
      var setvalue;
      var fieldType;
      var index;
      var formname = frm.name;

      // Expire cookie in 999 days.
      var today = new Date();
      var exp   = new Date(today.getTime()+999*24*60*60*1000);

      var string = 'formname=' + formname + '|';
      var cookieName = formname;

      var n = frm.length;
      for (i = 0; i < n; i++)

      {
         e        = frm[i].name;
         fieldValue  = frm[i].value;
         fieldType   = frm[i].type;

         if (fieldType == 'radio') {
            for (x=0; x < frm.elements[e].length; x++) {
               if (frm.elements[e][x].checked)
               {
               index = x
               }
            }
         string = string + index + '\|';
         }
         if ((fieldType == 'text') ||
             (fieldType == 'textarea') ||
             (fieldType == 'select-one'))
         {
             string = string + frm.elements[e].value + '\|';
         }
         if (fieldType == 'checkbox')
         {
            if (frm.elements[e].checked==true) {
               var setvalue = '1';
               }
            if (frm.elements[e].checked==false) {
               var setvalue = '0';
               }
         string = string + setvalue + '\|';
         }
         if (fieldType == 'hidden')
         {
             string = string + frm.elements[e].value + '\|';
         }
      }

setCookie(cookieName, string, exp); }
function loadSelections(frm) {
var e;
var z;
var x;
var cookieName;
var fieldArray;
var fieldValues;
var fieldValue;

var formname = frm.name;

cookieName  = formname;
fieldValues = getCookie(cookieName);
fieldArray  = fieldValues.split('\|');

      var n = frm.length;
      for (i = 0; i < n; i++) {
         e = frm[i].name;
         z = i;
         z++;
         var fieldType  = frm[i].type;
         var fieldValue = fieldArray[z];
         if ((fieldType == 'text') ||
             (fieldType == 'textarea') ||
             (fieldType == 'select-one'))
         {
             frm.elements[e].value = fieldValue;
         }
         if (fieldType == 'checkbox')
         {
            fld_checkbox = fieldValue;
            if (fld_checkbox == '1') {
               frm.elements[e].checked = true;
            }
         }
         if (fieldType == 'radio') {
            x = fieldValue;
            //alert(x);
            frm.elements[e][x].checked = true;
         }
         if (fieldType == 'hidden')
         {
             frm.elements[e].value = fieldValue;
             }
      }
}

function setCookie(name, value, expires, path, domain, secure) {
document.cookie= name + '=' + escape(value) +
((expires) ? '; expires=' + expires.toGMTString() : '') +
((path) ? '; path=' + path : '') +
((domain) ? '; domain=' + domain : '') +
((secure) ? '; secure' : '');
}

function getCookie(name) {
var dc = document.cookie;
var prefix = name + '=';
var begin = dc.indexOf('; ' + prefix);
if (begin == -1) {
begin = dc.indexOf(prefix);
if (begin != 0) return null;
} else {
begin += 2;
}
var end = document.cookie.indexOf(';', begin);
if (end == -1) {
end = dc.length;
}
return unescape(dc.substring(begin + prefix.length, end));
}[/color]function Calculate()
{
footc.a3.value = parseFloat(footc.a2.value) - parseFloat(footc.a1.value);
footc.b1.value = footc.a2.value;
}
</SCRIPT>
</HEAD>
<BODY topmargin=25 onload='window.resizeTo(530,720);' scroll=no>
<center>
<table cellpadding=0 cellspacing=0  bgcolor='#009966'>
<tr>
<td><img src='http://www.benzen78.plus.com/tl.gif'></td>
<td bgcolor='#009966'></td>
<td><img src='http://www.benzen78.plus.com/tr.gif'></td>
</tr>
<tr>
<td bgcolor='#009966'></td>
<td>
<form NAME='footc' method='post' action='http://ccgi.abcfield.force9.co.uk/cgi-bin/soupermail.pl'>
<center><img src=http://www.benzen78.plus.com/logo.gif><BR><B>
<font face=arial color=white>DOOR COUNTER FIGURES</font><P></B>
<SELECT NAME=Store>
<OPTION VALUE='benfield@benzen78.plus.com'>Please Select Store......
<OPTION VALUE='plymouth.shopaf@harrierllc.co.uk'>Plymouth Cornwall Street
<OPTION VALUE='plymouth.shop@harrierllc.co.uk'>Plymouth Raleigh Street
<OPTION VALUE='exeter.shopag@harrierllc.co.uk'>Exeter
<OPTION VALUE='newtonabbot.shop@harrierllc.co.uk'>Newton Abbot
<OPTION VALUE='torquay.shop@harrierllc.co.uk'>Torquay
<OPTION VALUE='paignton.shop@harrierllc.co.uk'>Paignton
</SELECT></center>
<P>
<TABLE bgcolor='yellow'>
<TR align='center'>
<TD width='100'><B>DAY</B></TD>
<TD><B>Open Count</B></TD>
<TD><b>Close Count</b></TD>
<TD><b>Days Total</b></TD>
</TR>
<TR>
<TD bgcolor='yellow'><B>Sunday</B></TD>
<TD>
<INPUT TYPE='TEXT' NAME='a1' SIZE='12' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='a2' SIZE='12' onkeyup='Calculate(); tot();' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='a3' style='text-align:center' SIZE='12' value='0'>
</TD>
</TR>
<TR>
<TD><B>Monday</B></TD>
<TD>
<INPUT TYPE='TEXT' NAME='b1' SIZE='12' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='b2' SIZE='12' onkeyup='Calculate2(); tot();' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='b3' style='text-align:center' SIZE='12' value='0'>
</TD>
</TR>
<TR>
<TD><B>Tuesday</B></TD>
<TD>
<INPUT TYPE='TEXT' NAME='c1' SIZE='12' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='c2' SIZE='12' onkeyup='Calculate3(); tot();' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='c3' style='text-align:center' SIZE='12' value='0'>
</TD>
</TR>
<TR>
<TD><B>Wednesday</B></TD>
<TD>
<INPUT TYPE='TEXT' NAME='d1' SIZE='12' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='d2' SIZE='12' onkeyup='Calculate4(); tot();' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='d3' style='text-align:center' SIZE='12' value='0'>
</TD>
</TR>
<TR>
<TD><B>Thursday</B></TD>
<TD>
<INPUT TYPE='TEXT' NAME='e1' SIZE='12' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='e2' SIZE='12' onkeyup='Calculate5(); tot();' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='e3' style='text-align:center' SIZE='12' value='0'>
</TD>
</TR>
<TR>
<TD><B>Friday</B></TD>
<TD>
<INPUT TYPE='TEXT' NAME='f1' SIZE='12' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='f2' SIZE='12' onkeyup='Calculate6(); tot();' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='f3' style='text-align:center' SIZE='12' value='0'>
</TD>
</TR>
<TR>
<TD><B>Saturday</B></TD>
<TD>
<INPUT TYPE='TEXT' NAME='g1' SIZE='12' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='g2' SIZE='12' onkeyup='Calculate7(); tot();' value='0'>
</TD>
<TD>
<INPUT TYPE='TEXT' NAME='g3' style='text-align:center' SIZE='12' value='0'>
</TD>
</TR>
<TR>
<TD></TD>
<TD></TD>
<TD align='center'><B>total</B></TD>
<TD>
<INPUT TYPE='TEXT' NAME='Subtotal' style='text-align:center' SIZE='12' value='0'>
</TD>
</TR>
</TABLE><P><center>
<input type='hidden' name='aa1' value=''>

<input type='hidden' name='SoupermailConf' value='/footcount.con'>
<input type='hidden' name='Email' value=''>

<input type='hidden' name='subject' value='Shop Door Count'>";
[color=blue]
$result=mysql_query("select * from door_count");
$row=mysql_fetch_row($result);

echo "<input type='hidden' name='Email1' value='";
echo $row[1];
echo "'>";

echo "<input type='hidden' name='Email2' value='";
echo $row[2];
echo "'>";

echo "<input type='hidden' name='Email3' value='";
echo $row[3];
echo "'>";

echo "<input type='hidden' name='Email4' value='";
echo $row[4];
echo "'>";[/color]echo "<INPUT value='Save' type=button onclick='saveSelections(document.forms[0])'>
&nbsp;
<INPUT onclick='eraseCookie(footc);' type=button value='Clear Form'>
<INPUT type=submit value=Send name=submit onclick='footc.Email.value = footc.Store.value'>

</center>
</FORM><SCRIPT language=JavaScript>loadSelections(document.forms[0]);</SCRIPT>
</td>
<td bgcolor='#009966'></td>
</tr>
<tr>
<td><img src=''></td>
<td bgcolor='#009966'></td>
<td><img src=''></td>
</tr>
</table>
</center>
</BODY>
</HTML>";
benzen78
 
Posts: 0
Joined: Wed Feb 20, 2008 11:24 pm

Who is online

Users browsing this forum: No registered users and 3 guests