Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: subskrypcja - poprawki kodu
Forum PHP.pl > Forum > Przedszkole
Zygander
niżej mój I dziąłający skrypt coś na wzór subskrybcji (nie licząc uploadu plików jpg i wyświetlania ich w 4 kolumnach co działa w 1/2) dry.gif

wszystko w nim działa ale wiem że można to napisac lepiej jeżeli ktoś ma chwilke aby pomoc mi w dążeniu do doskonałości to będę wdzięczny.
jeżeli poprawki wymagają jakiejś "zaawansowanej wiedzy" to bardzo proszę o szczegóły bo jeszcze wiele mi zostało do nauki tongue.gif

kod "checkmail.php" znalazłem gdzieś w necie mam zamiar napisać coś w tym stylu samemu ( wydaje sie dość proste) jak juz uporam sie z ewentualnymi poprawkami w "getmail.php"

baza -> id (autoincrement) | mail (unique) | status (1 lub 0)

form.htm
  1. <?php
  2.  
  3. ......
  4. <form action=&#092;"getmail.php\" method=\"POST\">
  5. mail: <input type=&#092;"text\" name=\"mail\" maxlength=\"50\"><br><br>
  6. <input type=&#092;"submit\" name=\"Submit\" value=\"Wyślij\">
  7. </form>
  8. .........
  9.  
  10. ?>


getmail.php
  1. <?php
  2. include_once(&#092;"./checkemail.php\");
  3.  
  4.  if(!$_POST['mail'])
  5.  { echo &#092;"podaj mail\" ;
  6.  
  7.  }
  8. else
  9. {
  10. if (!ismail($_POST['mail']))
  11. {
  12.  
  13. echo &#092;"to nie jest poprawny mail\";
  14. }
  15.  else
  16.  {
  17.  
  18. mysql_connect( &#092;"localhost\", \"root\", \"\" );
  19. mysql_select_db( &#092;"mydb\");
  20. $res = mysql_query( 'SELECT * FROM maillista' );
  21. $mail = $_POST['mail'];
  22. $val = mysql_fetch_array($res);
  23.  
  24.  
  25. mysql_query (&#092;"INSERT INTO maillista (mail) VALUES ('$mail')\");
  26.  
  27. if (mysql_errno()==0)
  28. {
  29. echo &#092;"$mail <br><br>mail został dodany do bazy\";
  30. }
  31.  else
  32.  {
  33. $status=$val['status'];
  34. if($status==1)
  35. {
  36. mysql_query (&#092;"UPDATE maillista SET status='0' WHERE mail='$mail'\");
  37. echo &#092;"mail usunięty z listy mailingowej\";
  38. }
  39.  
  40. else
  41. {
  42. mysql_query (&#092;"UPDATE maillista SET status='1' WHERE mail='$mail'\");
  43. echo &#092;"mail dodany do listy mailingowej\";
  44. }
  45.  }
  46.  }
  47. }
  48.  
  49. ?>


checkmail.php
  1. <?php
  2.  
  3. function ismail($email)
  4. {
  5.  $pos = strpos($email, '@');
  6.  if ($pos === false){
  7. return false;
  8.  }
  9.  else
  10.  {
  11. $pos = strpos($email, '.', $pos);
  12. if ($pos === false){
  13.  return false;
  14. }
  15. else
  16. {
  17.  return true;
  18.  }
  19. }
  20.  }
  21.  
  22. ?>
czachor
Funkcja sprawdzająca poprawność maila jest raczej słaba... Poszukaj na forum, jest ich kilka.
Zrób też jakieś filtrowanie danych (np. mysql_escape_string" title="Zobacz w manualu PHP" target="_manual, strip_tags" title="Zobacz w manualu PHP" target="_manual...).
Zygander
wielkie dzięki za sugestię
nie bardzo wiem o czym piszesz ale wiem o czym doczytac smile.gif
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.