Jump to content

Barand

Moderators
  • Posts

    24,605
  • Joined

  • Last visited

  • Days Won

    830

Everything posted by Barand

  1. Is there somewhere, other than those genre link in your first post, where the user can enter a search value?
  2. As stated, the search bar is sending GET data. There is no POST data in the code you posted, so why do you need a second form?
  3. If you are outputting an image from a DB blob field, then here's an example... // EMULATE DATA FROM THE DATABASE $type = 'image/png'; $comments = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna.'; $image_data = file_get_contents('images/snowman.PNG'); // OUTPUT THE DATA echo "<div style='width:396;'> <img src='data:{$type};base64," . base64_encode( $image_data ) . "' width='394' height='393'> <p>$comments</p> "; RESULT
  4. You are passing the prices in the post data as the checkbox values, but don't use them (they can be spoofed). Instead use the id to get the price. EXAMPLE <?php $available_seasons = array ( 226 => array ( 'season_name' => '2022 - Season 1', 'season_price' => '25.99', 'season_start_date' => 'Jan. 1, 2022', 'season_end_date' => 'Mar. 31, 2022', 'prize' => 100, ), 227 => array ( 'season_name' => '2022 - Season 2', 'season_price' => '28.99', 'season_start_date' => 'Apr. 1, 2022', 'season_end_date' => 'Jun. 30, 2022', 'prize' => 100, ), 238 => array ( 'season_name' => '2022 - Season 3', 'season_price' => '40.99', 'season_start_date' => 'Jul. 1, 2022', 'season_end_date' => 'Sep. 30, 2022', 'prize' => 230, ), 239 => array ( 'season_id' => 239, 'season_name' => '2022 - Season 4', 'season_price' => '30.65', 'season_start_date' => 'Oct. 1, 2022', 'season_end_date' => 'Dec. 31, 2022', 'prize' => 300, ) ); if ($_SERVER['REQUEST_METHOD'] == 'POST') { $total = 0; echo "<h3>Chosen seasons</h3>"; foreach ($_POST['choice'] as $id => $chosen) { $price = $available_seasons[$id]['season_price']; // get price from your data, not the user $total += $price; echo "{$available_seasons[$id]['season_name']} &mdash; \${$price}<br>"; } echo "<h3>Total due &emsp;\${$total}</h3><hr><br><br>"; exit; } ?> <!DOCTYPE html> <html lang="en"> <head> <title>Example</title> <meta charset="utf-8"> <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script> <script type='text/javascript'> function checkTotal(box) { var sum = parseFloat($("#total").val()) if ( $(box).is(":checked")) { sum += $(box).val() * 1 } else { sum -= $(box).val() * 1 } $("#total").val(sum.toFixed(2)) } </script> </head> <body> <form name='seasonForm' method="post" action=''> <fieldset> <legend>Tickets for Seasons</legend> <?php foreach ( $available_seasons as $k => $season ) { echo "<input name='choice[$k]' class='uk-checkbox' type='checkbox' value='{$season[ 'season_price' ]}' onclick='checkTotal(this)'/> {$season['season_name']}<br>"; } echo "<button type='submit'>Continue</button><br>"; ?> </fieldset> <input id='total' value='0' > </body> </html>
  5. Have you got if(isset($_POST['submit'])){ or if(isset($_GET['search'])){
  6. Use $_GET['search'] instead of $_POST['search']. If the search=??? is in the url query string, the key/value pair will be put into the GET array. For those times when you are just getting data (as in a search) use GET. If updating something, use POST
  7. Name the checkboxes choice[226], choice[227] etc where 226 is your id
  8. As you are processing a csv file, use fgetcsv() You indexes for the data are wrong - "dmcnum" will be index [0] (arrays number from 0 by default). You are giving all records inserted the same ID (00001) - not good. Use an auto_incrementing key in your db table. Defore connecting to your DB, call this code below to automate mysql error reporting mysqli_report(MYSQLI_REPORT_ERROR|MYSQLI_REPORT_STRICT); Forget mysqli and use the superior PDO library (better and easier)
  9. AFAIK, DateTime and DateInterval only work with whole seconds. If you want to go smaller you'll need microtime()
  10. Two suggestions. Stop createing a new mysql connection every time you want to execute a query. Just connect once for each page. Stop using multi_query() - use query()
  11. A while() loop stops when the condition returns false (mysqli_fetch_array() returns false when there are no more records to fetch) A foreach() loops iterates through the elements of an array
  12. I have a solution. SOLVED
  13. Hey, @Psycho, haven't I seen this plagiarist's comment somewhere else?
  14. Use code tags in future. (It's the highlighted button)
  15. If there are multiple reocords for years then each array element for the year need to be an array of records while($stmt -> fetch()){ $awards[$ay][] = [$id, $an, $aw]; } or while($stmt -> fetch()){ $awards[$ay][$id] = [$an, $aw]; }
  16. Your 2 variables are $results[0]['totcool'] $results[1]['totcool'] For example $average = ( $results[0]['totcool'] + $results[1]['totcool'] ) / 2;
  17. Getta better checker. When using wildcard (%) characters in a search, you need to use LIKE (not = ) Also, I would have thought the subcategory value in your search would be the same one that was selected to get you to that page, not the same as the other search values. Although not an error, you should be using prepared queries and not put variables in the query string.
  18. Sorry about that poor advice. I didn't spot the warning in my IDE about improperly nested tags until after after I'd posted. <style type='text/css'> span.headline { font-size: 20pt; font-weight: 400; } </style> <body> <p><span class='headline'>Hello</span> World</p> </body>
  19. Getting your query syntax correct would be a good start.
  20. if it is zero do this else do this endif Perhaps you should check if it's 0 then output according to the result of that check.
  21. try <style type='text/css'> h1.headline { display: inline; } </style> <body> <p><h1 class='headline'>Hello</h1>World</p> </body>
  22. Can't you just let the users set their own system locale settings so they appear as they want. So in UK I would see 123.456 whereas someone in say, Germany, would see 123,456
  23. Don't post the same question every 30 minutes - once is enough. Closing this one.
×
×
  • 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.