PHP Checkbox

Reply

Join Date: Jul 2005
Posts: 19
Reputation: egoleo is an unknown quantity at this point 
Solved Threads: 0
egoleo egoleo is offline Offline
Newbie Poster

PHP Checkbox

 
0
  #1
Aug 26th, 2005
I have a problem with php and checkbox. Can someone
help me with it?

I want to be able to compute values of a checkbox that is when the
checkboxes are checked using php.

example
<input type="checkbox" name="course" value="&cent;30 /> JAVA
<input type="checkbox" name="course" value="&cent;100 /> C
<input type="checkbox" name="course" value="&cent;10 /> PERL
<input type="checkbox" name="course" value="&cent;200 /> C++
<input type="checkbox" name="course" value="&cent;70 /> PHP
<input type="checkbox" name="course" value="&cent;90 /> C#

so in that case when i check C, JAVA and PHP,
the php code should be able to compute the values in cedis for me
as a user and given a summary of the course chosen and also
the total amount involved with each course chosen.

so that i have say

This is a summary of the courses registered for
JAVA 30
C 100
PHP 70

and the total amount to be paid is 200.

So what i want is the php code to help me do that.
Reply With Quote Quick reply to this message  
Join Date: Jan 2005
Posts: 294
Reputation: zippee is an unknown quantity at this point 
Solved Threads: 6
zippee's Avatar
zippee zippee is offline Offline
Posting Whiz in Training

Re: PHP Checkbox

 
0
  #2
Aug 27th, 2005
You should change the checkbox names, they are all the same now (each checkbox name has to be unique). see my other post of identical question at http://www.daniweb.com/techtalkforum...340#post156340

Once your script know which course the user chose, you can do some math to sum up the fee based on post data.
Ecommerce-Web-Store.com Building Your e-Business.
Reply With Quote Quick reply to this message  
Join Date: Jul 2005
Posts: 19
Reputation: egoleo is an unknown quantity at this point 
Solved Threads: 0
egoleo egoleo is offline Offline
Newbie Poster

Re: PHP Checkbox

 
0
  #3
Aug 29th, 2005
Thank you all for ur help. But i did this and is still not working.

HTML CODE
.........

<form action="testcheckbox.php" method="POST" name="form1">
<p>Name :
<input type="text" name="textfield">
</p>
<p>Course:
<input type="text" name="textfield">
</p>
<p>Tel No:
<input type="text" name="textfield">
</p>
<p>
<input type="checkbox" name="cd[]" value="&cent;20">
JAVA<br>
<input type="checkbox" name="cd[]" value="&cent;30">
PERL<br>
<input type="checkbox" name="cd[]" value="&cent;10">
PYTHON<br>
<input type="checkbox" name="cd[]" value="&cent;30">
C#<br>
<input type="checkbox" name="cd[]" value="&cent;90">
JYTHON<br>
<input type="checkbox" name="cd[]" value="&cent;100">
C++<br>
<input type="checkbox" name="cd[]" value="&cent;120">
PHP</p>
<p align="center">
<input type="submit" name="Submit" value="Join Now">
</p>
<p align="left"> <br>
</p>
</form>

PHP CODE FOR ACTION
..........................

<?php
$totalprice = 0;
foreach($cd as $cd)
$totalprice += $cd;
echo "$totalprice";

/*if(isset($_POST['$cd']))
echo 'checked';*/
?>

Because i get the results to be 0 always.
But i would want it to compute all the courses that would checked
and the total for their price listed.
Reply With Quote Quick reply to this message  
Join Date: Jan 2005
Posts: 294
Reputation: zippee is an unknown quantity at this point 
Solved Threads: 6
zippee's Avatar
zippee zippee is offline Offline
Posting Whiz in Training

Re: PHP Checkbox

 
0
  #4
Aug 30th, 2005
Your checkbox should look like this:
<input type="checkbox" name="cd0" value="20">x
<input type="checkbox" name="cd1" value="30">y
<input type="checkbox" name="cd2" value="100">z

php part, let say you have three checkboxes:
[php]$total = ;
for($i=0;$i<3;$i++){
$amount = $_POST['cd'.$i];
$total += $amount;
}
echo $total;[/php]
Ecommerce-Web-Store.com Building Your e-Business.
Reply With Quote Quick reply to this message  
Join Date: Jan 2007
Posts: 2
Reputation: amschroeder is an unknown quantity at this point 
Solved Threads: 0
amschroeder amschroeder is offline Offline
Newbie Poster

Re: PHP Checkbox

 
0
  #5
Jan 15th, 2007
Originally Posted by zippee View Post
You should change the checkbox names, they are all the same now (each checkbox name has to be unique). see my other post of identical question at http://www.daniweb.com/techtalkforum...tml#post156340

Once your script know which course the user chose, you can do some math to sum up the fee based on post data.
Actually, each checkbox name does not have to be unique. In fact you can have something such as:

[HTML]

<input type='checkbox' name='myCheckbox' value='1'>
<input type='checkbox' name='myCheckbox' value='2'>
<input type='checkbox' name='myCheckbox' value='3'>
<input type='checkbox' name='myCheckbox' value='4'>

[END HTML]


[PHP]

/***********
$_REQUEST['myCheckbox'] will equal an array of selected values.
***********/

foreach($_REQUEST['myCheckbox'] as $singleVar)
{
//$singleVar will equal the value of a selected checkbox,
}

[END PHP]


Maybe I didn't read the thread thoroughly enough... I apologize if I missed something.

-Adam
Reply With Quote Quick reply to this message  
Join Date: Aug 2006
Posts: 138
Reputation: php_daemon is an unknown quantity at this point 
Solved Threads: 2
php_daemon php_daemon is offline Offline
Junior Poster

Re: PHP Checkbox

 
0
  #6
Jan 15th, 2007
Originally Posted by egoleo View Post
Thank you all for ur help. But i did this and is still not working.

HTML CODE
.........

<form action="testcheckbox.php" method="POST" name="form1">
<p>Name :
<input type="text" name="textfield">
</p>
<p>Course:
<input type="text" name="textfield">
</p>
<p>Tel No:
<input type="text" name="textfield">
</p>
<p>
<input type="checkbox" name="cd[]" value="&cent;20">
JAVA<br>
<input type="checkbox" name="cd[]" value="&cent;30">
PERL<br>
<input type="checkbox" name="cd[]" value="&cent;10">
PYTHON<br>
<input type="checkbox" name="cd[]" value="&cent;30">
C#<br>
<input type="checkbox" name="cd[]" value="&cent;90">
JYTHON<br>
<input type="checkbox" name="cd[]" value="&cent;100">
C++<br>
<input type="checkbox" name="cd[]" value="&cent;120">
PHP</p>
<p align="center">
<input type="submit" name="Submit" value="Join Now">
</p>
<p align="left"> <br>
</p>
</form>

PHP CODE FOR ACTION
..........................

<?php
$totalprice = 0;
foreach($cd as $cd)
$totalprice += $cd;
echo "$totalprice";

/*if(isset($_POST['$cd']))
echo 'checked';*/
?>

Because i get the results to be 0 always.
But i would want it to compute all the courses that would checked
and the total for their price listed.
  1. <form action="testcheckbox.php" method="POST" name="form1">
  2. <p>Name :
  3. <input type="text" name="textfield">
  4. </p>
  5. <p>Course:
  6. <input type="text" name="textfield">
  7. </p>
  8. <p>Tel No:
  9. <input type="text" name="textfield">
  10. </p>
  11. <p>
  12. <input type="checkbox" name="cd[]" value="20">
  13. JAVA<br>
  14. <input type="checkbox" name="cd[]" value="30">
  15. PERL<br>
  16. <input type="checkbox" name="cd[]" value="10">
  17. PYTHON<br>
  18. <input type="checkbox" name="cd[]" value="30">
  19. C#<br>
  20. <input type="checkbox" name="cd[]" value="90">
  21. JYTHON<br>
  22. <input type="checkbox" name="cd[]" value="100">
  23. C++<br>
  24. <input type="checkbox" name="cd[]" value="120">
  25. PHP</p>
  26. <p align="center">
  27. <input type="submit" name="Submit" value="Join Now">
  28. </p>
  29. <p align="left"> <br>
  30. </p>
  31. </form>
  1. <?php
  2. $totalprice = 0;
  3. foreach($_POST['cd'] as $cd) $totalprice += $cd;
  4. echo "$totalprice";
  5. ?>
Last edited by php_daemon; Jan 15th, 2007 at 12:44 pm.
Reply With Quote Quick reply to this message  
Join Date: Jan 2007
Posts: 2
Reputation: amschroeder is an unknown quantity at this point 
Solved Threads: 0
amschroeder amschroeder is offline Offline
Newbie Poster

Re: PHP Checkbox

 
0
  #7
Jan 21st, 2007
Originally Posted by php_daemon View Post
  1. <form action="testcheckbox.php" method="POST" name="form1">
  2. <p>Name :
  3. <input type="text" name="textfield">
  4. </p>
  5. <p>Course:
  6. <input type="text" name="textfield">
  7. </p>
  8. <p>Tel No:
  9. <input type="text" name="textfield">
  10. </p>
  11. <p>
  12. <input type="checkbox" name="cd[]" value="20">
  13. JAVA<br>
  14. <input type="checkbox" name="cd[]" value="30">
  15. PERL<br>
  16. <input type="checkbox" name="cd[]" value="10">
  17. PYTHON<br>
  18. <input type="checkbox" name="cd[]" value="30">
  19. C#<br>
  20. <input type="checkbox" name="cd[]" value="90">
  21. JYTHON<br>
  22. <input type="checkbox" name="cd[]" value="100">
  23. C++<br>
  24. <input type="checkbox" name="cd[]" value="120">
  25. PHP</p>
  26. <p align="center">
  27. <input type="submit" name="Submit" value="Join Now">
  28. </p>
  29. <p align="left"> <br>
  30. </p>
  31. </form>
  1. <?php
  2. $totalprice = 0;
  3. foreach($_POST['cd'] as $cd) $totalprice += $cd;
  4. echo "$totalprice";
  5. ?>


Depending on your PHP configuration $_POST['cd'] and $cd could potentially reference the same variables. Try changing your foreach statement to :

foreach($_POST['cd'] as $singleCD)



Also, one thing that I have found useful while doing server side processing with PHP is to actually view the array keys of the POST variable.

You can do so with the array_keys() function.

foreach(array_keys($_POST) as $myKey)
echo $myKey."<br />";


I have seen situations before where the browser can prematurely close a form (prior to the closing form tag) and elements such as checkboxes and text fields can be completely ignored. If changing the variable names within the foreach does not work, verify that you're actually receiving the variables as part of the POST array. Does this make sense?
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC