Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL][PHP]aktywacja konta, link aktywacyjny
zizz1667
post 21.05.2019, 22:18:52
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 5.10.2013

Ostrzeżenie: (0%)
-----


Witam mam pytanie jak zmienic to zeby nie czytalo pliku mail.php tylko wysyłało odrazu link aktywacyjny na adres email tak jak w 2 przykładzie
  1. $activation_url = 'http://www..pl/login.php?do=activate&hash='.$sn_hash;
  2.  
  3. $content1 = 'Witaj Na .pl, '.$sn_login.'!';
  4. $content2 = 'Dokonałeś rejestracji w serwisie .pl podając adres <strong>'.$sn_email.'</strong>
  5. . Aktywuj teraz swoje konto klikając odnośnik: <a href="'.$activation_url.'">'.$activation_url.'</a>. Życzymy przyjemnego korzystania z serwisu.';
  6.  
  7. echo '<p class="OKAY">Twoje konto zostało utworzone. Dokonaj aktywacji konta za pośrednictwem e-maila, który do Ciebie wysłaliśmy. Życzymy przyjemnego korzystania z serwisu .pl</p>';
  8.  
  9. $mail_layout = @file_get_contents('./mail.php');
  10. $mail_layout = str_replace('__CONTENT1', $content1, $mail_layout);
  11. $mail_layout = str_replace('__CONTENT2', $content2, $mail_layout);
  12.  
  13. include('./class/class.mail.php');
  14.  
  15. new Mail($sn_email, "Aktywacja konta w serwisie pl", $mail_layout);
  16.  
  17. }
  18.  
  19. }
  20.  
  21. }
  22. }
  23. }
  24. }
  25. }
  26. }
  27.  
  28. }
  29. ?>
  30.  
  31. <div class="loginto">
  32.  
  33. <form action="login.php" method="post">


  1.  
  2. // Pobierz hash
  3.  
  4. $user_hash = $r['user_hash'];
  5.  
  6. // Pobierz login
  7.  
  8. $user_login = $r['user_login'];
  9.  
  10. // Generuj nowe hasło
  11.  
  12. $user_new_pass = md5(mktime() + rand(0, 1000));
  13.  
  14. $user_new_pass = substr($user_new_pass, 0, 8);
  15.  
  16.  
  17.  
  18. $user_new_pass_encoded = $user_new_pass;
  19.  
  20.  
  21.  
  22. // Generuj link zmiany hasła
  23.  
  24. $remind_url = 'http://nazwa.pl/login.php?do=pass_set&user_hash='.$user_hash.'&p='.$user_new_pass_encoded;
  25.  
  26.  
  27.  
  28. // Generuj treść emaila
  29.  
  30. $email_body = "
  31.  
  32. <p>Przypomnienie hasła w serwisie nazwa</p>
  33.  
  34. <p>Twój login to: <strong>$user_login</strong></p>
  35.  
  36. <p>Twoje nowe hasło to: <strong>$user_new_pass</strong></p>
  37.  
  38. <p>By aktywować swoje nowe hasło kliknij link:</p>
  39.  
  40. <p><a href=\"$remind_url\">$remind_url</a></p>
  41.  
  42. <p>--</p>
  43.  
  44. <p>Zespół nazwa</p>";
  45.  
  46.  
  47.  
  48. include('./class/class.mail.php');
  49.  
  50. new Mail($user_email, "Przypomnienie hasła w serwisie NAZWA", $email_body);
Go to the top of the page
+Quote Post
nospor
post 22.05.2019, 10:26:19
Post #2





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Nie bardzo rozumiem problem... skoro nie chcesz tresci wiadomosci pobierac z pliku to zapisz te tresc w zmiennej tak jak to masz w skrypcie drugim...


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
zizz1667
post 22.05.2019, 12:41:10
Post #3





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 5.10.2013

Ostrzeżenie: (0%)
-----


jak tak robie to nie wysyla wog wiadomosci
Go to the top of the page
+Quote Post
nospor
post 22.05.2019, 13:35:12
Post #4





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




No to pokaz jak to robisz. Skad mamy wiedziec co napsules

I dla pewnosci pokaz jeszcze zawartosc mail.php


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
zizz1667
post 22.05.2019, 17:35:45
Post #5





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 5.10.2013

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 22.05.2019, 14:35:12 ) *
No to pokaz jak to robisz. Skad mamy wiedziec co napsules

I dla pewnosci pokaz jeszcze zawartosc mail.php

robie to tak
  1. // Pobierz hash
  2. $user_hash = $r['user_hash'];
  3. // Pobierz login
  4. $user_login = $r['user_login'];
  5. // Generuj link Aktywacji
  6. $activation_url = 'http://www.nazwa.pl/test/login.php?do=activate&hash='.$sn_hash;
  7.  
  8. // Generuj treść emaila
  9. $email_body = "
  10.  
  11. <p>Twój login to: <strong>$user_login</strong></p>
  12. <p>Twoje nowe hasło to: <strong>$user_new_pass</strong></p>
  13. <p>By aktywować swoje konto kliknij link:</p>
  14. <p><a href=\"$activation_url\">$activation_url</a></p>
  15. <p>--</p>
  16. <p>Zespół nazwa</p>";
  17.  
  18. include('./class/class.mail.php');
  19. new Mail($user_email, "Aktywacja w serwisie NAZWA", $email_body);

a zawartosc mail.php
  1. <?
  2.  
  3. ?>
  4. </strong>. Aktywuj teraz swoje konto klikając odnośnik: </a>
  5. <?
  6. [...]
  7. ?>
  8. <a href="http://www.nazwa.pl/test/login.php?do=activate&hash='.$sn_hash;">Link</a>
  9. <?
  10. [...]
  11. ?>
  12. . Życzymy przyjemnego korzystania z serwisu.


Ten post edytował zizz1667 22.05.2019, 17:36:25
Go to the top of the page
+Quote Post
nospor
post 23.05.2019, 09:52:44
Post #6





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Nigdie nie widze ustawionej zmiennej $user_email

ps
Cytat
<?
[...]
?>

Jak mowilem bys pokazal zawartosc pliku mail.php to mialem, o dziwo, na mysli jego zawartosc a nie jego wykropkowana zawartosc


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
zizz1667
post 23.05.2019, 13:27:09
Post #7





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 5.10.2013

Ostrzeżenie: (0%)
-----


zrobione wystarczylo dac
  1. <?
  2. '__CONTENT2'
  3. ?>

Tylko jest problem ze nie chce wyświetlać linku na poczte hotmail.com
plik mail.php
  1. <img src="http://nazwa.pl/test/obrazki/bg3.png width="60" height="51"" style="float:left;padding:1px 5px 0px 0px;"/>
  2. <p class="OKAY">Twoje konto zostało utworzone. Dokonaj aktywacji konta za pośrednictwem e-maila, który do Ciebie wysłaliśmy. Życzymy przyjemnego korzystania z serwisu nazwa!</p>
  3. <p class="OKAY">Jeśli nie dostałeś linku Prośimy o kontakt: pomoc@nazwa.pl</p>
  4. <?
  5. '__CONTENT2'
  6. ?>

plik register
  1. <h1>Rejestracja w nazwa</h1>
  2. <p class="classic">Uzupełnij podstawowe dane niezbędne do założenia konta. Resztę informacji będziesz mógł uzupełnić w swoim profilu po zalogowaniu.
  3. Jeśli nie przyszła wiadomość aktywacyjna sprawdź folder SPAM.</p>
  4.  
  5. <?php
  6. if($_SERVER['REQUEST_METHOD'] == 'POST')
  7. {
  8.  
  9. $sn_login = trim($_POST['sn_login']);
  10. $sn_email = trim($_POST['sn_email']);
  11. $sn_password = trim($_POST['sn_password']);
  12. $sn_password2 = trim($_POST['sn_password2']);
  13.  
  14. if($sn_login == "") echo '<p class="ERROR">Nie podałeś swojego loginu!</p>'; else {
  15. if(strlen($sn_login) > 30) echo '<p class="ERROR">Twój login jest zbyt długi! (max. 30 znaków)</p>'; else {
  16. if($sn_email == "") echo '<p class="ERROR">Nie podałeś swojego e-maila!</p>'; else {
  17. if(strlen($sn_email) > 100) echo '<p class="ERROR">Twój e-mail jest zbyt długi! (max. 100 znaków)</p>'; else {
  18. if($sn_password == "") echo '<p class="ERROR">Nie podałeś swojego hasła!</p>'; else {
  19. if($sn_password != $sn_password2) echo '<p class="ERROR">Obydwa podane hasła muszą być jednakowe!</p>'; else {
  20.  
  21. $q = mysql_query('SELECT COUNT(`user_id`) FROM `sn_users` WHERE `user_login` = "'.mysql_real_escape_string($sn_login).'" LIMIT 1;');
  22. $c = mysql_fetch_row($q);
  23. $c = $c[0];
  24.  
  25. if($c > 0) echo '<p class="ERROR">Podany przez Ciebie login jest już zajęty! Wybierz inny login.</p>'; else {
  26.  
  27. $q = mysql_query('SELECT COUNT(`user_id`) FROM `sn_users` WHERE `user_email` = "'.mysql_real_escape_string($sn_email).'" LIMIT 1;');
  28. $c = mysql_fetch_row($q);
  29. $c = $c[0];
  30.  
  31. if($c > 0) echo '<p class="ERROR">Podany przez Ciebie adres e-mail jest już zajęty! Wybierz inny adres e-mail.</p>'; else {
  32.  
  33. $sn_hash = substr(md5($sn_login.'#'.$sn_email), 0, 10);
  34.  
  35. $q = mysql_query('INSERT INTO `sn_users` (`user_login`, `user_password`, `user_email`, `user_stamp`, `user_hash`, `user_status`)
  36. VALUES("'.mysql_real_escape_string($sn_login).'", "'.sha1($sn_password).'", "'.mysql_real_escape_string($sn_email).'", "'.mktime().'", "'.$sn_hash.'", "0")');
  37.  
  38. $user_new_id = mysql_insert_id();
  39.  
  40. // Twórz profil
  41. mysql_query('INSERT INTO `sn_profile` (`user_id`) VALUES("'.$user_new_id.'");');
  42. // Aktualizacja płci
  43. mysql_query('UPDATE `sn_profile` SET `user_gender` = "'.$_REQUEST['gender'].'" WHERE `user_id` = "'.$user_new_id.'" LIMIT 1;');
  44. // jesli kobieta, daj jej 600 pkt
  45. if($_REQUEST['gender'] == "female")
  46. {
  47. mysql_query('UPDATE `sn_profile` SET `user_premium_points` = "600" WHERE `user_id` = "'.$user_new_id.'" LIMIT 1;');
  48.  
  49.  
  50. // Konwersja dla kobiet
  51. ?>
  52. <!-- Google Code for sn kobieta Conversion Page -->
  53.  
  54. <script type="text/javascript">
  55.  
  56. /* <![CDATA[ */
  57.  
  58. var google_conversion_id = 1066981005;
  59.  
  60. var google_conversion_language = "pl";
  61.  
  62. var google_conversion_format = "3";
  63.  
  64. var google_conversion_color = "ffffff";
  65.  
  66. var google_conversion_label = "Mn05CI_bhwIQja3j_AM";
  67.  
  68. var google_conversion_value = 0;
  69.  
  70. /* ]]> */
  71.  
  72. </script>
  73.  
  74. <script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js">
  75.  
  76. </script>
  77.  
  78. <noscript>
  79.  
  80. <div style="display:inline;">
  81.  
  82. <img height="1" width="1" style="border-style:none;" alt="" src="http://www.googleadservices.com/pagead/conversion/1066981005/?label=Mn05CI_bhwIQja3j_AM&amp;guid=ON&amp;script=0"/>
  83.  
  84. </div>
  85.  
  86. </noscript>
  87.  
  88.  
  89. <?php
  90.  
  91. }
  92. // jesli facet daj mu 300 pkt
  93. if($_REQUEST['gender'] == "male")
  94. {
  95. mysql_query('UPDATE `sn_profile` SET `user_premium_points` = "300" WHERE `user_id` = "'.$user_new_id.'" LIMIT 1;');
  96. }
  97.  
  98. $activation_url = 'http://nazwa.pl/test/index.php?p=activate&hash='.$sn_hash;
  99.  
  100. $content1 = 'Witaj nazwa, '.$sn_login.'!';
  101. $content2 = 'Dokonałeś rejestracji w serwisie YouLove podając adres <strong>'.$sn_email.'</strong>. Aktywuj teraz swoje konto klikając odnośnik: <a href="'.$activation_url.'">'.$activation_url.'</a>. Życzymy przyjemnego korzystania z serwisu.';
  102.  
  103. echo '<p class="OKAY">Twoje konto zostało utworzone. Dokonaj aktywacji konta za pośrednictwem e-maila, który do Ciebie wysłaliśmy. Życzymy przyjemnego korzystania z serwisu nazwa!</p>';
  104.  
  105. $mail_layout = @file_get_contents('./mail.php');
  106. $mail_layout = str_replace('__CONTENT1', $content1, $mail_layout);
  107. $mail_layout = str_replace('__CONTENT2', $content2, $mail_layout);
  108.  
  109. include('./class/class.mail.php');
  110.  
  111. new Mail($sn_email, "Aktywacja konta w serwisie nazwa", $mail_layout);
  112.  
  113.  
  114. }
  115.  
  116. }
  117.  
  118. }
  119. }
  120. }
  121. }
  122. }
  123. }
  124.  
  125. }
  126. ?>
  127.  
  128. <form action="index.php?p=register" method="post">
  129. <table class="register">
  130. <tr>
  131. <td>Nazwa użytkownika (login):</td>
  132. <td><input type="text" name="sn_login" /></td>
  133. </tr>
  134. <tr>
  135. <td>Adres e-mail:</td>
  136. <td><input type="text" name="sn_email" /></td>
  137. </tr>
  138. <tr>
  139. <td>Twoje hasło:</td>
  140. <td><input type="password" name="sn_password" /></td>
  141. </tr>
  142. <tr>
  143. <td>Powtórz hasło:</td>
  144. <td><input type="password" name="sn_password2" /></td>
  145. </tr>
  146. <tr>
  147. <td>Płeć</td>
  148. <td><input type="radio" name="gender" value="male" style="width: 15px;" checked="checked" /> Mężczyzna <input type="radio" name="gender" value="female" style="width: 15px;" /> Kobieta</td>
  149. </tr>
  150. <tr>
  151. <td>&nbsp;</td>
  152. <td><input type="submit" value="Załóż konto" class="sbm2" /></td>
  153. </tr>
  154. </table>




Ten post edytował zizz1667 23.05.2019, 14:23:20
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.03.2024 - 13:13