За последние 24 часа нас посетили 17923 программиста и 1566 роботов. Сейчас ищут 1306 программистов ...

Привязка webmoney transfer

Тема в разделе "Установка PHP", создана пользователем vandalandru, 8 окт 2013.

  1. vandalandru

    vandalandru Новичок

    С нами с:
    8 окт 2013
    Сообщения:
    1
    Симпатии:
    0
    Ребят спасайте, а то пропаду.... Как привязать сайт к webmoney??? вроде в скрипте все прописываю правильно а когда с сайта делаю авторизацию то webmoney выдает что "url удален" где я косячу? Вот скрипт
    <?
    require('header.php'); ?>
    <div class="menucenter">
    <?
    $lastlogdate=date("Y.m.d" ) ;
    $lastip = $_POST['WmLogin_UserAddress'];

    $urlid="8cfd5d8f-d3f5-4b01-92f1-a10c015f7b56";

    $testticket=preg_match('/^[a-zA-Z0-9\$\!\/]{32,48}$/i', $_POST['WmLogin_Ticket']);

    if($_POST['WmLogin_UrlID']==$urlid && $testticket==1) {
    $xml="
    <request>
    <siteHolder>419188240173</siteHolder>
    <user>".$_POST['WmLogin_WMID']."</user>
    <ticket>".$_POST['WmLogin_Ticket']."</ticket>
    <urlId>".$urlid."</urlId>
    <authType>".$_POST['WmLogin_AuthType']."</authType>
    <userAddress>".$_POST['WmLogin_UserAddress']."</userAddress>
    </request>
    ";
    $root=$_SERVER["DOCUMENT_ROOT"];
    $CertPath="$root/sfbwm.cer";
    function _GetAnswer($xml){
    global $CertPath;
    // Инициализируем сеанс CURL
    $ch = curl_init("https://login.wmtransfer.com/ws/authorize.xiface");
    // В выводе CURL http-заголовки не нужны
    curl_setopt($ch, CURLOPT_HEADER, 0);
    // Возвращать результат, а не выводить его в браузер
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    // Метод http-запроса - POST
    curl_setopt($ch, CURLOPT_POST,1);
    // Что передаем?
    curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
    // Задаем корневой сертификат для проверки
    curl_setopt($ch, CURLOPT_CAINFO, $CertPath);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, TRUE);
    // Выполняем запрос, ответ помещаем в переменную $result;
    $result=curl_exec($ch);
    if(curl_errno($ch)) echo "Curl Error number = ".curl_errno($ch).", Error desc = ".curl_error($ch)."<br>";
    curl_close($ch);
    return $result;
    }
    $resxml=_GetAnswer($xml);
    $xmlres = simplexml_load_string($resxml);
    if(!$xmlres) echo "Не получен XML-ответ";
    $result=strval($xmlres->attributes()->retval);
    if($result=='0')
    {



    $wmid=$_POST["WmLogin_WMID"];




    $query = mysql_num_rows(mysql_query("SELECT wmid FROM tb_users WHERE wmid = '$wmid'"));
    if($query==0){
    echo '<div class=error>Пользователя с таким wmid не зарегистрированно</div>';
    require('footer.php');
    exit();
    }

    require('karera/setup_status.php');
    require('karera/setup_ball.php');

    $timenow=time();
    $user_ball = mysql_query("SELECT *,(TO_DAYS(NOW())-TO_DAYS(`lastlogdate`)) as datanew FROM `tb_users` WHERE `wmid` = '$wmid'");
    $us_b=mysql_fetch_assoc($user_ball);
    if($us_b["datanew"] >= 7){
    $dat = intval($us_b["datanew"]/7);
    if($dat != 0){
    $ball_dat = $dat * $ball["no_act"];
    mysql_query("UPDATE `tb_users` SET `ball` = `ball`+'$ball_dat' WHERE `username` = '".$us_b["username"]."'");
    mysql_query("INSERT INTO tb_infoball (user, date, ball, referer, mesage) VALUES('".$us_b["username"]."', '$timenow', '$ball_dat', '---', 'Отсутствие активности')") or die(mysql_error());
    }
    }

    $reu_ball=mysql_query("select * from tb_users where wmid='$wmid'");
    $r_b=mysql_fetch_assoc($reu_ball);

    if($r_b["ball_date"]+604800 < time()){

    $datlog = explode(".",$r_b["lastlogdate"]);
    $fhour = $fmin = $fsec = 0;
    $fyear = $datlog[0];
    $fmonth = $datlog[1];
    $fday = $datlog[2];

    $unix = mktime( $fhour, $fmin, $fsec, $fmonth, $fday, $fyear );

    if($unix > $r_b["ball_date"]){

    mysql_query("UPDATE `tb_users` SET `ball` = `ball`+'".$ball["user_act"]."', `ball_date` = '".time()."' WHERE `wmid` = '$wmid'");
    mysql_query("INSERT INTO tb_infoball (user, date, ball, referer, mesage) VALUES('$wmid', '$timenow', '+ ".$ball["user_act"]."', '---', 'Активность в течении недели')") or die(mysql_error());

    if($r_b["referer"] != ""){
    mysql_query("UPDATE `tb_users` SET `ball` = `ball`+'".$ball["ref_act"]."' WHERE `username` = '".$r_b["referer"]."'");
    mysql_query("INSERT INTO tb_infoball (user, date, ball, referer, mesage) VALUES('".$r_b["referer"]."', '$timenow', '+ ".$ball["ref_act"]."', '---', 'Активность реферала в течении недели')");
    }
    }

    }

    if($r_b["ball"] >= $st_users[1]["ball"]){$ball_status = 1;}
    if($r_b["ball"] >= $st_users[2]["ball"]){$ball_status = 2;}
    if($r_b["ball"] >= $st_users[3]["ball"]){$ball_status = 3;}
    if($r_b["ball"] >= $st_users[4]["ball"]){$ball_status = 4;}
    if($r_b["ball"] >= $st_users[5]["ball"]){$ball_status = 5;}
    if($r_b["ball"] >= $st_users[6]["ball"]){$ball_status = 6;}


    $query = mysql_query("SELECT username,password FROM tb_users WHERE wmid = '$wmid'") or die(mysql_error());
    $row = mysql_fetch_assoc($query);


    $nicke=$row['username'];
    $passe=$row['password'];

    require('config.php');
    $timenow=time();
    $querybt = "UPDATE tb_users SET lastlogdate='$lastlogdate', lastvxod='$timenow', lastiplog='$lastip', `ball_status` = '$ball_status' WHERE wmid='$wmid'";
    mysql_query($querybt) or die(mysql_error());

    session_start();
    $lastlogdate=date("Y.m.d");
    $lastip = getRealIP();

    mysql_query("UPDATE tb_users SET lastlogdate='$lastlogdate', lastvxod='$timenow', lastiplog='$lastip' WHERE username='$nicke'");

    $_SESSION["username"]=$nicke;
    $_SESSION["password"]=$passe;

    echo '<div class=good>Авторизация прошла успешно</div>';
    ?>

    <META HTTP-EQUIV="REFRESH" CONTENT="0;URL=members.php">

    <?
    }else{
    echo "<div class=error>Неправильный тикет!</div>"; exit();
    }
    }else{

    ?>
    <div class=error>
    <b>&nbsp;<font color=#ff0000>Отмена!</font></b><br>
    <center>Через 5 секунды Вы будете перенаправленны на сайт.</center>
    </div>
    <META HTTP-EQUIV="REFRESH" CONTENT="5;URL=index.php">

    <?
    }
    ?>
    <? require('footer.php'); ?>