आप एक क्वेरी कर रहे हैं और परिणाम संसाधन को $result1 में संग्रहीत कर रहे हैं, फिर सभी पंक्तियों को एक लूप में ला रहे हैं जिसे आप प्रतिध्वनित करते हैं, फिर तुरंत इसे फिर से लाने का प्रयास कर रहे हैं। एक बार जब आप सभी परिणाम प्राप्त कर लेते हैं, तो आप उन्हें फिर से प्राप्त नहीं कर सकते। ठीक है, आप mysql_data_seek का उपयोग कर सकते हैं, लेकिन ज्यादातर मामलों में ऐसा करना वास्तव में अक्षम और बेकार है। परिणामों को पहली बार किसी सरणी में संग्रहीत करें।
$rows = array();
while ($row = mysql_fetch_assoc($result1)) {
$rows[] = $row;
}
तब आप इस सरणी के माध्यम से foreach कर सकते हैं।
foreach ($rows as $row) {
// Build the binary notification
$msg = chr(0).pack('n', 32).pack('H*', $row['devicetoken']) . pack('n', strlen($payload)) . $payload;
//... etc
}