My Math Forum  

Go Back   My Math Forum > Science Forums > Computer Science

Computer Science Computer Science Forum


Reply
 
LinkBack Thread Tools Display Modes
February 18th, 2016, 07:45 PM   #1
Senior Member
 
Joined: Oct 2009

Posts: 895
Thanks: 1

Which logic I can use here

Hello

I have 100000 users , I am alwyes send information, In fact this information don't reach to all users , I don't know why ?

I will attach send php files . and please see what is wrong of this flie and which logic I can use . Note if I change 1000 number to 3000 no user receive also I don't know why
------------------------------------
Code:
<?php
include('session.php');
?>
<html>
	<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
 <?php
	header('Content-type: text/html; charset=utf-8');
  //generic php function to send GCM push notification
   function sendPushNotificationToGCM($registatoin_ids, $message) {
		//Google cloud messaging GCM-API url
        $url = 'https://android.googleapis.com/gcm/send'; 
		
		
		
        $fields = array(
            'registration_ids' => $registatoin_ids,
            'data' => $message,
        );

		define("GOOGLE_API_KEY", "AIzaSyB2x2jNi94zypUX_bqfYkhyuhrTwK0IG2XJ8");//saeed    
		//define("GOOGLE_API_KEY", "AIzaSyDYoI9libqfYkhyuhr-rxGW_G0TVDUe4dg");//amjad   

        $headers = array(
            'Authorization: key=' . GOOGLE_API_KEY,
            'Content-Type: application/json'
        );
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0); 
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
		//curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 );
        $result = curl_exec($ch);       
        if ($result === FALSE) {
            die('Curl failed: ' . curl_error($ch));
        }
        curl_close($ch);
        return $result;
    }
?>
 
<?php
	header('Content-type: text/html; charset=utf-8');
	$response = array();
	require_once __DIR__ . '/db_connect.php';
	$db = new DB_CONNECT();
	
	if (isset($_GET['level']) &&isset($_GET['m1']) &&isset($_GET['m2']) &&isset($_GET['m3']) &&isset($_GET['m4']) &&isset($_GET['m5']) &&isset($_GET['m6']) &&isset($_GET['m7'])){
		$level=$_GET['level'];
		
		
		$m1=$_GET['m1'];
		$m2=$_GET['m2'];
		$m3=$_GET['m3'];
		$m4=$_GET['m4'];
		$m5=$_GET['m5'];
		$m6=$_GET['m6'];
		$m7=$_GET['m7'];
		
		
		$m11=mysql_real_escape_string($_GET['m1']);
		$m21=mysql_real_escape_string($_GET['m2']);
		$m31=mysql_real_escape_string($_GET['m3']);
		$m41=mysql_real_escape_string($_GET['m4']);
		$m51=mysql_real_escape_string($_GET['m5']);
		$m61=mysql_real_escape_string($_GET['m6']);
		$m71=mysql_real_escape_string($_GET['m7']);
	
		mysql_query("SET NAMES 'utf8'");
		$resultaa = mysql_query("INSERT words (id, level, m1, m2, m3, m4, m5, m6, m7) VALUES (NULL,'$level','$m11','$m21','$m31','$m41','$m51','$m61','$m71')");
		$id = mysql_insert_id();
		
		if($level == 0){
			$result = mysql_query("SELECT Rid FROM users ");
			
		}else{
			$result = mysql_query("SELECT Rid FROM users where level = '$level' OR level = '4'");
			//$result = mysql_query("SELECT Rid FROM users where level = '$level'");
		}
		
		$message = array(
						 'word_id' => $id,
						 'm1' => $m1,
						 'm2' => $m2,
						 'm3' => $m3,
						 'm4' => $m4,
						 'm5' => $m5,
						 'm6' => $m6,
						 'm7' => $m7,
						 'level' => $level
						 );
						 
		 if (mysql_num_rows($result) > 0) {
			for($counter = 0; $counter<mysql_num_rows($result) ; $counter+=1000){
				 $gcmRegIds=array();
				 for($counter2=$counter ; $counter2<$counter+1000;$counter2++){
					 if($counter2<mysql_num_rows($result)){
						 $row = mysql_fetch_array($result);
						 $gcmRegIds[]=$row["Rid"];
						
					 }
				}
				
				 $pushStatus = sendPushNotificationToGCM($gcmRegIds, $message);
				 echo $pushStatus;
				
			 }
				
			 $time = microtime(true) - $_SERVER["REQUEST_TIME_FLOAT"];
			echo "Process Time: {$time}";
			

		}else {
			$response["success"] = 0;
			$response["message"] = "No user found";
			echo json_encode($response);
		}
						 
						 
						 
						 
						 
						 
						 
		//echo $result;
	} 
	else {
		// required field is missing
		$response["success"] = 0;
		$response["message"] = "Required field(s) is missing";

		// echoing JSON response
		echo json_encode($response);
	} 
?>
</body>
</html>

Last edited by greg1313; February 18th, 2016 at 08:43 PM.
r-soy is offline  
 
February 19th, 2016, 02:01 AM   #2
Senior Member
 
Joined: Oct 2009

Posts: 895
Thanks: 1

In fact , I made GCM serive in my app , but I think it has limit of sending notification up to 1000
Can I do something

please help me
r-soy is offline  
February 19th, 2016, 04:16 AM   #3
Senior Member
 
Joined: Dec 2012
From: Hong Kong

Posts: 781
Thanks: 284

Math Focus: Linear algebra, linear statistical models
You may have more luck on Stack Overflow, where there are people with more experience in server-side scripting, databases and such. Non-maths questions often remain unanswered here...
123qwerty is offline  
February 20th, 2016, 06:01 AM   #4
Math Team
 
Joined: Oct 2011
From: Ottawa Ontario, Canada

Posts: 8,755
Thanks: 604

Quote:
Originally Posted by r-soy View Post

I have 100000 users , I am alwyes send information, In fact this information don't reach to all users , I don't know why ?

I will attach send php files . and please see what is wrong of this flie and which logic I can use . Note if I change 1000 number to 3000 no user receive also I don't know why
Also, you should get someone to check your English:
you would have a better chance of getting responses.
Denis is offline  
March 10th, 2016, 11:59 AM   #5
Senior Member
 
Joined: Dec 2015
From: Earth

Posts: 133
Thanks: 20

Try use HTML codes. if it does not work... then the problem is you
idontknow is offline  
Reply

  My Math Forum > Science Forums > Computer Science

Tags
logic



Thread Tools
Display Modes


Similar Threads
Thread Thread Starter Forum Replies Last Post
prove logic equation, logic algebra dmnte Computer Science 0 April 23rd, 2015 10:45 PM
Logic ungeheuer Applied Math 7 February 27th, 2013 07:28 PM
logic help! krnbluemonkey Applied Math 2 September 12th, 2010 08:02 PM
Logic Help Ryuk Computer Science 2 June 9th, 2009 11:31 AM
logic simi Algebra 0 April 27th, 2008 03:00 AM





Copyright © 2017 My Math Forum. All rights reserved.