Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
ufo56
HV Guru

liitunud: 18.11.2004
|
03.08.2011 19:11:29
SMS Skripti viga |
|
|
Tere
Selline mure siis, sms skript töötab läbi fortumo testkeskonna ilusti aga kui saata sms siis Viga sõnumis. Mis võib viga olla ? Ise ei oska midagi peale hakata eriti.
php:
|
<?php // fortumo $SERVER_IPS = array('81.20.151.38', '81.20.148.122', '209.20.83.207', '79.125.125.1'); $SIGNATURE = 'asdasdasd'; // mysql $MYSQL_HOST = 'localhost'; $MYSQL_USER = 'baas'; $MYSQL_PASS = 'parool'; $MYSQL_DB = 'parool'; $SENDER = $_GET['sender']; $MESSAGE = $_GET['message']; $REPLY = "Thank you $SENDER for sending $MESSAGE."; $CREDIT = '2.00'; // check that the request comes from Fortumo server if(! in_array($_SERVER['REMOTE_ADDR'], $SERVER_IPS)) { die("Error: Unknown IP"); } // check the signature if(empty($SIGNATURE) || !check_signature ($_GET, $SIGNATURE)) { die("Error: Invalid signature"); } //customize this according to your needs die("Error: Makse ebaõnnestus"); } // email if (! preg_match('/HOSTLI (.+)/i', $MESSAGE, $email)) { die("Error: Viga sõnumis"); } add_cash($MYSQL_HOST, $MYSQL_USER, $MYSQL_PASS, $MYSQL_DB, $email[1], $CREDIT); function check_signature($params_array, $secret) { $str = ''; foreach ($params_array as $k=>$v) { if($k != 'sig') { $str .= "$k=$v"; } } $str .= $secret; return ($params_array['sig'] == $signature); } function add_cash($server = 'localhost', $user = '', $password = '', $db = '', $email, $credit) { // kontrolli kas kasutaja on olemas if ($rows == 1) { } else { die("Error: Kasutaja puudub"); } } ?>
|
_________________
Lae pildid -> pilt.io |
|
Kommentaarid: 78 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
67 |
|
tagasi üles |
|
 |
DoS
HV veteran

liitunud: 19.08.2002
|
03.08.2011 20:37:04
|
|
|
järelikult kohale jõudnud sõnum ei vasta antud regulaaravaldisele
kirjuta $MESSAGE kusagile üles (faili või andmebaasi), siis peaks näha olema, milles asi
+niikuinii võiks reaalse rakenduse puhul kõik saabunud sõnumid (sql injectioniga loomulikult arvestades) koos ip'de, saatja numbrite ja kellaegadega baasi salvestada, et hiljem igasugu arusaamatusi oleks võimalik lahendada
|
|
Kommentaarid: 50 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
47 |
|
tagasi üles |
|
 |
ufo56
HV Guru

liitunud: 18.11.2004
|
03.08.2011 20:42:50
|
|
|
Fortumo salvestab seda minu eest juba, huvitav kui ühest kohast töötab ja teisest mitte.
_________________
Lae pildid -> pilt.io |
|
Kommentaarid: 78 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
67 |
|
tagasi üles |
|
 |
DoS
HV veteran

liitunud: 19.08.2002
|
03.08.2011 20:56:26
|
|
|
ufo56 kirjutas: |
Fortumo salvestab seda minu eest juba, huvitav kui ühest kohast töötab ja teisest mitte. |
selle pärast ma räägingi, et kohale jõudnud sõnumeid logida. Järelikult teisest kohast tulevad teistsugused sõnumid.
|
|
Kommentaarid: 50 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
47 |
|
tagasi üles |
|
 |
19Mart94
HV kasutaja
liitunud: 22.06.2010
|
03.08.2011 20:56:38
|
|
|
Ma juba seletasin sulle, mis seal valesti
|
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
31 |
|
tagasi üles |
|
 |
ufo56
HV Guru

liitunud: 18.11.2004
|
03.08.2011 21:00:14
|
|
|
Mul ei ole tõesti seletamisest kasu kui ma ei saa sellest aru. Pange aga teema kinni ja kõik.
_________________
Lae pildid -> pilt.io |
|
Kommentaarid: 78 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
67 |
|
tagasi üles |
|
 |
Fukiku
Kreisi kasutaja

liitunud: 06.11.2003
|
03.08.2011 21:42:07
|
|
|
Alusta ikkagi sellest, mida soovitati - kirjuta $MESSAGE väärtus kõige täiega baasi või kuhugi välja. Siis näed vähemalt, mis kujul sealt sõnum tuli. Kui sinu viidatud teatega sureb, siis järelikult selle regulaaravaldise järgi meiliaadressi sõnumist ei leitud, järelikult tuleb sõnumile kriitiliselt otsa vaadata, et mis seal teisiti on.
_________________ Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist. |
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
19Mart94
HV kasutaja
liitunud: 22.06.2010
|
03.08.2011 21:58:31
|
|
|
Viga on selles, et ta kontrollib, kas sõnumi sisus on HOSTLI, aga Fortumos on märksõna ja sõnumi sisu eraldi väärtused. Ridade 34-36 asemel peaks olema hoopis e-maili kontroll $MESSAGE väärtusest.
HOSTLI on $_GET['keyword'] väärtuses.
|
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
31 |
|
tagasi üles |
|
 |
DoS
HV veteran

liitunud: 19.08.2002
|
03.08.2011 22:12:19
|
|
|
Ah ok, siis muuda
if (!preg_match('/HOSTLI (.+)/i', $MESSAGE, $email)) { |
rida
if (!preg_match('/(.+)/i', $MESSAGE, $email)) { |
ja kärab küll.
|
|
Kommentaarid: 50 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
47 |
|
tagasi üles |
|
 |
ufo56
HV Guru

liitunud: 18.11.2004
|
03.08.2011 22:49:16
|
|
|
DoS tänud aitamast aga nüüd genereerib rea et kasutaja puudub
_________________
Lae pildid -> pilt.io |
|
Kommentaarid: 78 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
67 |
|
tagasi üles |
|
 |
19Mart94
HV kasutaja
liitunud: 22.06.2010
|
03.08.2011 23:02:35
|
|
|
addslashes() võib sul emaili stringi segamini ajada koodis.
|
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
31 |
|
tagasi üles |
|
 |
DoS
HV veteran

liitunud: 19.08.2002
|
03.08.2011 23:10:53
|
|
|
ufo56 kirjutas: |
DoS tänud aitamast aga nüüd genereerib rea et kasutaja puudub |
Kas see tuleb läbi testikeskkonna või smsiga?
Nii on suht võimatu öelda, milles täpselt asi on. Midagi keerulist seal ei ole, soovitan võimalusel keegi tuttav (veebi)progeja kõrvale võtta ja asi üle vaadata. Seda enam, et antud koodis on veel kahtlaseid asju sisse kirjutatud, mis küll testimiseks kõlbavad, aga päris lahenduses ei pruugi kõige paremad olla.
|
|
Kommentaarid: 50 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
47 |
|
tagasi üles |
|
 |
|