Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Kod do wyslanie
Forum PHP.pl > Forum > Przedszkole
quspy123
Witam mam problem z serwisem fortumo wyslali mnie tutaj zeby was profesjonalistow poprosic o pomoc..a wiec prosze o pomoc a wiec
zrobilem sobie usluge na fortumo..ok wszystko super extra itp..
daje skrypt od nich na moja strone ok nie ma problemu
lecz jak wysle smsa zamist odpowiedzi dostaje"
Error:invalid signature"
poniezej zamiszczam skrypt:
  1. <?php
  2.  
  3. //set true if you want to use script for billing reports
  4. //first you need to enable them in your account
  5. $billing_reports_enabled = false;
  6.  
  7. // check that the request comes from Fortumo server
  8. if(!in_array($_SERVER['REMOTE_ADDR'],
  9. array('81.20.151.38', '81.20.148.122', '209.20.83.207'))) {
  10. die("Error: Unknown IP");
  11. }
  12.  
  13. // check the signature
  14. $secret = ''; // insert your secret between ''
  15. if(!empty($secret) && !check_signature($_GET, $secret)) {
  16. die("Error: Invalid signature");
  17. }
  18.  
  19. $sender = $_GET['sender'];
  20. $message = $_GET['message'];
  21.  
  22. // do something with $sender and $message
  23. $reply = "Thank you $sender for sending $message";
  24.  
  25. // print out the reply
  26. echo($reply);
  27.  
  28. //customize this according to your needs
  29. if($billing_reports_enabled
  30. && preg_match("/Failed/i", $_GET['status'])
  31. && preg_match("/MT/i", $_GET['billing_type'])) {
  32. // find message by $_GET['message_id'] and suspend it
  33. }
  34.  
  35.  
  36. function check_signature($params_array, $secret) {
  37. ksort($params_array);
  38.  
  39. $str = '';
  40. foreach ($params_array as $k=>$v) {
  41. if($k != 'sig') {
  42. $str .= "$k=$v";
  43. }
  44. }
  45. $str .= $secret;
  46. $signature = md5($str);
  47.  
  48. return ($params_array['sig'] == $signature);
  49. }
  50. ?>


Prosze mi "wskazac" gdzie mam dodac swoje kody..chodzi o to ze np
dodalem do bazy czy gdzies tam kody np:
123X/1KSD/2K3D
nastepnie system wysyla 1 KOD! do osoby ktora wyslala wiadomosc lecz nie wszystkie tylko1..!
jak to zrobic gdzie to dodac..?
szym011
Skoro wywala błąd "Error: Invalid signature" to pewnie z tego powodu, że w lini 14 pomiędzy apostrofami w zmiennej $secret nie masz nic podane biggrin.gif
quspy123
Wiec jak zrobie tak:
  1. $secret = '1234,1234555,23455';


to do pierwszej osoby wysle 1234
potem do nastepnej 1234555 itd?


naitsabes
jak chcesz tak to zrob tablice i petle ktora wysyla wszystkie wiadomosci winksmiley.jpg czy co tam chcesz dokladnie
quspy123
ehh nie rozumiecie;P
po patrzcie
dam przyklad

A= Wysylajacy smsa
B=System ktory daje mu kod

A-Wysyla smsa o trsci "blabla2" na numer "222222"
B-Odsyla mu wiadomosc z kodem
A-Dostaje kod i sie cieszy i tyle

ok potem "A" Chce sobie kupic jeszcze 1kod
wiec
A-Wysyla esa
B-Daje mu kod(lecz musi mu dac inny! nie taki sam!)
A-cieszy sie..

itd rozumiecie..?
naitsabes
Cytat(quspy123 @ 16.09.2010, 22:01:41 ) *
ok potem "A" Chce sobie kupic jeszcze 1kod
wiec


Akurat "A" tutaj nie ma znaczenia, kto to... hmmmm na moj gust to tak:

Zrob zbior kodow, w bazie + id ktore po kazdym wyslaniu zwiekszalo sie co 1, i wysylaj kazdy kod od 0 do 9999.... inaczej moze rozszyfrowac twoj sposob kodowania i Cie zrobic w jajko winksmiley.jpg
szym011
A skąd masz ten kod?? Takie kody powinny być generowane automatycznie przez skrypt, ewentualnie jak napisał naitsabes zrób tablice z kodami i pętle która będzie odczytywała i wysyłała kolejne kody.
quspy123
dostalem od fortumo..na ich strnie jest..a mzoesz midac jais przyklad.?
nie mam stycznosci z php normalnie 0

%naides
lecz jak zrobic aby ten skrypt pobieral kody z bazy..?


#edit o to wam chodzi?


[php]
<?php
include "nazwa pliku z ktorego pobierze id "


//set true if you want to use script for billing reports
//first you need to enable them in your account
$billing_reports_enabled = false;
thomson89
Generujesz jakby hasło i ewentualnie jakoś haszujesz. Wtedy masz przyzwoity ciąg znaków (kod). Dodaj też na koniec id (bez żadnych kropek itd.). Kod dodaj do bazy i wyślij sms-em. Gdy ktoś wpisze kod wyciągasz 2 ostatnie liczby (albo 1 albo 3). Potem pobierasz rekord z bazy kodów gdzie id = temu id i kod = temu kodowi. Możesz ewentualnie bez id zrobić.
naitsabes
Wczytaj 2 tabele w mysql, jedna z id, druga z kodami gdzie id odpowiada jednemu kodowi ... Id powieksz o jeden i zaaktualizuj do bazy...


//edit

Używaj mysql, plik zawsze mozna wczytac i wtedy ktos ma za darmo kod
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.