Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: If w If'ie
Forum PHP.pl > Forum > PHP
filipsiu
Mam taki kod:
  1. <html>
  2. <head>
  3. {$headerinclude}
  4. <title>Battlefield 3: Polskie forum dla graczy - Wykup VIP</title>
  5.  
  6. </head>
  7. <body>
  8. {$header}
  9. <table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="clear: both; border-bottom-width: 0;">
  10. <tr>
  11. <td class="thead" colspan="2">
  12.  
  13. Wykup VIP
  14.  
  15. </td>
  16. </tr>
  17. <tr>
  18. <td class="trow2 post_content ">
  19.  
  20. <?php
  21. $connect = mysql_connect('localhost','root','');
  22. mysql_select_db('kody',$connect);
  23. if(isset($_POST['ok'])) {
  24.  
  25. $date = date("Y-m-d");
  26. $hour = date('H:i', strtotime('H:i +2 hours'));
  27. $nick = $_POST['nick'];
  28. $email = $_POST['email'];
  29. $smsCode = $_POST['smsCode'];
  30.  
  31. if(filter_var('$email', FILTER_VALIDATE_EMAIL)) {
  32.  
  33. $handle =
  34. fopen('http://profitsms.pl/check.php?apiKey=8a33b544601c8468bc7efadeee08ddb0&code='.$_POST['smsCode'],'r');
  35. $status = fgets($handle,8);
  36. fclose($handle);
  37.  
  38. switch($status)
  39. {
  40. case 1:
  41. $zapytanie = "INSERT INTO `kody` (`id`, `nick`, `email`, `kod`, `data`, `godzina`) VALUES (NULL, '$nick', '$email', '$smsCode', '$date', '$hour')";
  42. mysql_query($zapytanie) or die(mysql_error());
  43. echo 'Operacja przebiegła pomyślnie';
  44. break;
  45.  
  46. case 0:
  47. echo 'Wpisałeś zły kod sms';
  48. break;
  49. }
  50. }
  51. }
  52. else
  53. {
  54. echo 'Podano zły adres email!';
  55. }
  56. ?>
  57.  
  58. <form action="#" method="post">
  59. Twój nick: <input type="text" name="nick" value="" /><Br />
  60. Kod z SMS: <input type="text" name="smsCode" value="" /><Br />
  61. Email: <input type="text" name="email" value="" /><Br />
  62. <input type="submit" name="ok" value="Dalej" />
  63. </form>
  64. </td>
  65. </tr>
  66. </table>
  67. {$footer}
  68. </body>
  69. </html>

lecz gdy wejdę na stronę z tym skryptem nie klikając niczego wyświetla mi się 'Podanozły adres email!' chyba coś pomieszałem z klamrami może ktoś pomóc ?
greycoffey
  1. if (isset($_POST['ok'])) {
  2.  
  3. if (filter_var('$email', FILTER_VALIDATE_EMAIL)) {
  4.  
  5. switch ($status)
  6. {
  7. /* ... */
  8. }
  9. }
  10.  
  11. } else {
  12. echo 'Podano zły adres email!';
  13. }


A teraz widzisz co jest źle?
filipsiu
Tak widzę, dzięki
głupie błędy ale dopiero się uczę.
A mógłbyś jeszcze pomóc ?
Mam
$hour = date("H:i");

jak zrobić by do tego dodać +2h ?
tak by format dalej był taki:
przed 08:22
po 10:22
CuteOne
  1. echo date("H:i", mktime(date("H")+2, date("i")));


Następnym razem zobacz do manuala
filipsiu
patrzałem w manualu ale jak zrobiłem na przykładzie to w bazie były cyfry bez formatu tego co ja chcę

mam jeszcze 1 problem:
  1. <html>
  2. <head>
  3. {$headerinclude}
  4. <title>Battlefield 3: Polskie forum dla graczy - Wykup VIP</title>
  5.  
  6. </head>
  7. <body>
  8. {$header}
  9. <table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="clear: both; border-bottom-width: 0;">
  10. <tr>
  11. <td class="thead" colspan="2">
  12.  
  13. Wykup VIP
  14.  
  15. </td>
  16. </tr>
  17. <tr>
  18. <td class="trow2 post_content ">
  19.  
  20. <?php
  21. $connect = mysql_connect('localhost','root','');
  22. mysql_select_db('kody',$connect);
  23. if(isset($_POST['ok'])) {
  24. $date = date("Y-m-d");
  25. $hour = date("H:i", mktime(date("H")+2, date("i")));
  26. $nick = $_POST['nick'];
  27. $email = $_POST['email'];
  28. $smsCode = $_POST['smsCode'];
  29.  
  30. $handle =
  31. fopen('http://profitsms.pl/check.php?apiKey=8a33b544601c8468bc7efadeee08ddb0&code='.$_POST['smsCode'],'r');
  32. $status = fgets($handle,8);
  33. fclose($handle);
  34.  
  35. switch($status)
  36. {
  37. case 1:
  38. $zapytanie = "INSERT INTO `kody` (`id`, `nick`, `email`, `kod`, `data`, `godzina`) VALUES (NULL, '$nick', '$email', '$smsCode', '$date', '$hour')";
  39. mysql_query($zapytanie) or die(mysql_error());
  40. echo 'Operacja przebiegła pomyślnie';
  41. break;
  42.  
  43. case 0:
  44. echo 'Wpisałeś zły kod sms';
  45. break;
  46. }
  47. }
  48.  
  49. ?>
  50.  
  51. <form action="#" method="post">
  52. Twój nick: <input type="text" name="nick" value="" /><Br />
  53. Kod z SMS: <input type="text" name="smsCode" value="" /><Br />
  54. Email: <input type="text" name="email" value="" /><Br />
  55. <input type="submit" name="ok" value="Dalej" />
  56. </form>
  57. </td>
  58. </tr>
  59. </table>
  60. {$footer}
  61. </body>
  62. </html>

jak to zabezpieczyć przez sql injection ?
greycoffey
Cytat(filipsiu @ 8.08.2012, 10:22:20 ) *
Tak widzę, dzięki
głupie błędy ale dopiero się uczę.
A mógłbyś jeszcze pomóc ?
Mam
$hour = date("H:i");

jak zrobić by do tego dodać +2h ?
tak by format dalej był taki:
przed 08:22
po 10:22

http://stackoverflow.com/questions/9294302...by-dateinterval
filipsiu
trochę się spóźniłeś bo rozwiązanie daty już było
greycoffey
Cytat(filipsiu @ 8.08.2012, 10:58:50 ) *
trochę się spóźniłeś bo rozwiązanie daty już było

Lepiej nabrać dobrych praktyk, używając wspieranych rozwiązan obiektowych. Również zamiast mysql_*, które ma zostać zdeprecjonowane, proponuję używać PDO lub jezcze bardziej abstrakcyjnego Doctrine\DBAL. Co do SQL Injection, poczytaj o preparowaniu zmiennych.
Dominator
Używaj PDO z preparowaniem smile.gif
bigos1995-95
Sorki, jeśli można się wtrącić mam takie jedno może głupie pytanie. Jak tutaj kolega wyżej ma w skrypcie {$headerinclude} takie cos albo {$header} itd. chodzi mi to te nawiasy { }, co one oznaczają? Zmienna np. $headerinclude pobiera sie z innego pliku ? przez umieszczenie zmiennej w tych nawiasach '{ }' ona sie sama wczytuje ? czy o co z nimi chodzi? Jeśli mogłby mi ktoś odpowiedzieć na to banalne pytanie bylbym bardzo wdzieczny ; )
Niktoś
Takie parsowanie bez bloku inicjującego skrypt php (<?php ..... ?>) to według mnie błąd, ale mogę się mylić.
bigos1995-95
Ja nadal nie rozumiem smile.gif moze jakies przyklady w jaki sposob to dziala ? To co napisaleś nie daje mi nic do myslenia
untorched
@up, poczytaj o bibliotekach obsługi szablonów np. Smarty
bigos1995-95
dzieki untorched juz wiem o co chodzi ; )
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.