spiderman_2k7 Posted December 7, 2007 Share Posted December 7, 2007 Hi. I am very new to PHP and very much a novice, so I would appreciate if you could take this into mind! I'm currently making a small online 'store' on Football Shirts. The project won't be published it will just be used in my personal space for my own benefit and learning in my spare time. I have created a PHP page as follows: <html> <head> <title>Football Shirts 'R' Us</title> </head> <body> <body bgcolor="#339900"> <p> <font size=16, color=white><b><u><center>Football Shirts</center></u></b></p> <form action="url here" method="post"> <br> <table width=45%, border=1, align=center> <tr> <th> ID </th> <th> Football Shirt </th> <th> Team </th> <th> Price </th> <th> Select </th> </tr> <tr><tr> <?php if(!($lines = file('read_shirts.txt'))) {echo 'ERROR: Unable to open file! </body></html>'; exit;} foreach($lines as $theline) { list($id, $shirt, $club, $price) = split('\|',$theline); echo " <tr> <td>$id</td> <td> $shirt </td> <td> $club </td> <td> $price </td> <td><center><input type='checkbox' name='$theline'></center></td> </tr> "; } ?> </table> <form> <p><input type="submit" value="Submit"> </form> <form> <input type="reset" value="Reset"> </form> </body> </html> Note: where it says <form action="url here" i've removed my local working URL for this post. As you can see, I am pulling the football shirt data from a read file (read_shirts.txt). Once the 'user' has selected which shirts they wish to 'purchase' there is a submit button, that, when clicked, opens a new page that lists something like the following: Please confirm your order Hello, your order is as follows: 004||Manchester_United|39_99 005||Newcastle|39_99 It is pulling the item number, the shirt name and the price. However, now I want to show the items the 'user' has selected to 'purchase' and then show an invoice with the items, the prices, the price excluding tax, the price including tax, and then a total price. Could anyone help me out with this, or point me in the right direction? Thanks Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/ Share on other sites More sharing options...
starkytwo Posted December 7, 2007 Share Posted December 7, 2007 Hi there Im trying to sort out some code for a simple ordering process. I have a php form that lists the items from a .txt file with checkboxes where the user can then select items. However on the next form I cant get the form to display the itesm selected and their prices to calculate VAT and total cost etc. Im getting the following error when I try to process this second form: Notice: Undefined variable: plusvat in /nas/........ Heres the form I'm trying to pull the data from: <form action="purchases2.php" method="post"> <table border="2" cellpadding="5" cellspacing="5" width="50%"> <tr> <th> Image </th> <th> Description </th> <th> Sport </th> <th> Price </th> <th> Please Select </th> </tr> <?php if(!($lines = file('itemlist.txt'))) {echo 'ERROR: Unable to open file! </body></html>'; exit;} foreach($lines as $theline) { list($itemid, $sport, $description, $price, $image) = split('\|',$theline); echo " <tr> <td><img src='$image' width='45' height='45'></td> <td> $description </td> <td> $sport </td> <td> $price </td> <td> <input type='checkbox' name='$theline' </td> </tr> "; } ?> and here is the php code i currently have that I want to retrieve the items price and description from a .txt file and manipulate the data to get VAT prices etc. <form action="ordersummary2.php" method="post"> <?php $total="0"; foreach ($_POST as $varname => $varvalue) { if(!($lines = file('itemlist.txt'))) {echo 'ERROR: Unable to open file! </body></html>'; exit;} foreach($lines as $theline) { list($itemid, $sport, $description, $price, $image) = split('\|',$theline); if ($varname==$varvalue) { echo " <br/><br/> <tr> <input type='hidden' name='itemcode' value=$itemid> <td><align='center'> Item Number: $itemid </td> <input type='hidden' name='description' value=$description> <td><align='center'> Item Chosen: $desciption </td> <input type='hidden' name='price' value=$price> <td><align='center'> Price: $price </td> <td><align='center'><img src='$image' width='70' height='70'></td> </tr>"; $total=$total+$price; $plusvat=number_format($total*1.175,2); }}} echo " <br> <tr> <td aliign='left'> Total Excluding VAT: </td> <td> $total </td> </tr> <br> <tr> <td align='left'> Total Including VAT: </td> <td> $plusvat </td> </tr>"; ?> Can anyone spot any obvious mistakes I have made Thanks in advnace and sorry if i have included irrelevant code! Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409051 Share on other sites More sharing options...
revraz Posted December 7, 2007 Share Posted December 7, 2007 Sounds like you don't have access to a database, so I would create a new Order file with that information in it, then read it. Or you can try to rely on sessions to hold all the info, but you would lose the data if the browser was closed. Another idea is cookies, but I personally don't like them for storing this type of info. Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409058 Share on other sites More sharing options...
boushley Posted December 7, 2007 Share Posted December 7, 2007 Well, from the notice it looks like the if if ($varname==$varvalue) where you set plustvat $plusvat=number_format($total*1.175,2); isn't being run... so when you get to outputting it... its not set yet. And so php is letting you know. If you put an else on there that set $plusvat=''; then you would eliminate that error Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409068 Share on other sites More sharing options...
spiderman_2k7 Posted December 7, 2007 Author Share Posted December 7, 2007 Thanks for the reply. The data is stored in flat file. I want to keep it all to PHP and not use cookies or anything else for this mini project. Is there not specific code or tutorials that can pull the 'items' onto a new page (like I have done), but so I can customize this page so that the data appears in the form of an invoice listing the items, and then calculating the price with and without VAT? Thanks Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409070 Share on other sites More sharing options...
starkytwo Posted December 7, 2007 Share Posted December 7, 2007 Thanks for the reply, I see what you mean about the if statement not being run, however I dont understand where you suggest I place the "else" statement? - sorry but I'm a bit of a novice! Could you show me more specifically where the "else" should go? Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409075 Share on other sites More sharing options...
boushley Posted December 7, 2007 Share Posted December 7, 2007 Actually... I didn't realize the complexity of all those loops at first... if you do something like this after your three stacked closing brackets. if(!isset($plusvat)){ $plusvat = ''); } Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409079 Share on other sites More sharing options...
cunoodle2 Posted December 7, 2007 Share Posted December 7, 2007 Can you just clear this up for me a little as I would like to help (I remember being new and it was tough). You said "It is pulling the item number, the shirt name and the price. However, now I want to show the items the 'user' has selected to 'purchase' and then show an invoice with the items, the prices, the price excluding tax, the price including tax, and then a total price." Doesn't the page example "Hello, your order is as follows:" Show their order?? Sorry I guess I'm a little confused. Post the code for the "Show their order" page and I'll help you add totals and such. Is this what you are looking for? Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409082 Share on other sites More sharing options...
starkytwo Posted December 7, 2007 Share Posted December 7, 2007 Thanks thats got rid of the intial error I had. However I do not understadn what to put inbetween the '' in the code you just suggested? if(!isset($plusvat)){ $plusvat = ''); } Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409084 Share on other sites More sharing options...
spiderman_2k7 Posted December 7, 2007 Author Share Posted December 7, 2007 Hi. Thanks for the reply. Yes, sorry, i've not explained this too well but the 'order' page will display the item number, the shirt type and the price. The order page code I have is as follows: <html> <head> <title>Football Shirts 'R' Us!</title> </head> <body bgcolor="green"> <p> <font size=12, color=white><b><u><center>Your order with Football Shirts 'R' Us</center></u></b></p></font> <p><font size=6, color=white>Hello, your order is as follows:</p></font> <table> <tr> </tr> <?php $total="0"; foreach ($_POST as $varname => $varvalue) { if(!($lines = file('read_shirts.txt'))) {echo 'ERROR: Unable to open file! </body></html>'; exit;} foreach($lines as $theline) { list($id, $shirt, $club, $price) = split('\|',$theline); if ($varname==$varvalue) { echo " <br/><br/> <tr> <input type='hidden' name='itemcode' value=$id> <td><align='center'> Item Number: $id </td> <input type='hidden' name='description' value=$shirt> <td><align='center'> Item Chosen: $shirt </td> <input type='hidden' name='price' value=$club> <td><align='center'> Price: $club </td> <input type='hidden' name='price' value=$price> <td><align='center'> Price: $price </td> </tr>"; $total=$total+$price; $plusvat=number_format($total*1.175,2); }}} echo " <br> <tr> <td aliign='left'> Total Excluding VAT: </td> <td> $total </td> </tr> <br> <tr> <td align='left'> Total Including VAT: </td> <td> $plusvat </td> </tr>"; ?> </table> </body> </html> So basically, this page needs to show the mentioned shirt details, the price excluding VAT, the price with VAT, and then the total price. Thanks, I appreciate your patience with a novice! Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409091 Share on other sites More sharing options...
spiderman_2k7 Posted December 7, 2007 Author Share Posted December 7, 2007 Sorry, when I run this I get the following error: Your order with Football Shirts 'R' Us Hello, your order is as follows: Notice: Undefined variable: plusvat in /public_html/footballshirts/showvariables3.php on line 42 Total Excluding VAT: 0 Total Including VAT: Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409094 Share on other sites More sharing options...
cunoodle2 Posted December 7, 2007 Share Posted December 7, 2007 It appears as though you have 2 different topics going at the same time for the exact same problem. Please mark one of them as solved and/or have a moderator remove it. It is just too confusing going back and forth between the 2 of them.... http://www.phpfreaks.com/forums/index.php/topic,171045.0.html http://www.phpfreaks.com/forums/index.php/topic,171046.0.html Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409162 Share on other sites More sharing options...
cunoodle2 Posted December 7, 2007 Share Posted December 7, 2007 It appears as though you have 2 different topics going at the same time for the exact same problem. Please mark one of them as solved and/or have a moderator remove it. It is just too confusing going back and forth between the 2 of them.... http://www.phpfreaks.com/forums/index.php/topic,171045.0.html http://www.phpfreaks.com/forums/index.php/topic,171046.0.html Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409167 Share on other sites More sharing options...
scarlson Posted December 7, 2007 Share Posted December 7, 2007 In the future you could also look at osCommmerce website. This is a full PHP online store that you can customize any way you want it. It can take online payments as well. Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409168 Share on other sites More sharing options...
neylitalo Posted December 7, 2007 Share Posted December 7, 2007 I've merged the two topics, and as a result, the conversation may be a little confusing. Tough luck, don't double post. Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409205 Share on other sites More sharing options...
spiderman_2k7 Posted December 7, 2007 Author Share Posted December 7, 2007 Sorry about this, especially cunoodle2 as you offered to provide help. I wasn't actually aware that my friend/soon to be partner on this project had posted on PHP Freaks as well! Just spoken to him on the phone.. should really communicate better. Anyone reading this thread, could you please IGNORE any posts made from 'starkytwo', or could a mod or admin please delete his posts as we'll just use my posts for reference now! Link to comment https://forums.phpfreaks.com/topic/80657-php-help-with-purchasing-items/#findComment-409226 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.