2015-06-17 25 views
0

我做了下面的腳本,但我希望每個腳本都應該只在我調用該函數時回顯json_encode數組。當我嘗試定義函數,然後調用它時,它什麼也沒有顯示。如果腳本不是在函數中創建的,它正在工作。我如何製作不同的功能,然後根據我的使用情況調用不同的功能?如何使函數返回一個JSON字符串在PHP中調用它們?

<?php 

ini_set('display_errors', '0'); 
error_reporting(0); 
require_once("include/db.php"); 
date_default_timezone_set('Asia/Kolkata'); 

$regno ='14ASDFJ234'; 
$password = '0'; 
$name = 'EASPORTS'; 
$priority = 0; 

//fetch priority 
$query = "SELECT priority FROM users WHERE regno='{$regno}' AND pass='{$password}' LIMIT 1"; 
$res = mysql_query($query, $conn) or die(mysql_error()); 
$found = mysql_fetch_array($res); 

if($found) 
{ 
    $priority=$found['priority'];    
} 

//echo $priority; 
echo 'news feed : <br> ' 
$sql = "SELECT * FROM newsfeed"; 
$result = mysql_query($sql,$conn) or die(mysql_error()); 

while ($row = mysql_fetch_array($result)) { 

    $details[] = array(
     'name' => $row['name'], 
     'feed' => $row['feed']   
    ); 
} 

echo json_encode($details); 

// announcement details... 
echo "<br> Announcement details: <br>"; 

$sql1 = "SELECT * FROM announcements WHERE name = '$name'"; 
$result1 = mysql_query($sql1,$conn) or die(mysql_error()); 

while ($row1 = mysql_fetch_array($result1)) { 

    $details1[] = array(
     'name' => $row1['name'], 
     'pname' => $row1['pname'], 
     'date' => $row1['date'], 
     'time' => $row1['time'], 
     'status' => $row1['status']  
    ); 
} 

echo json_encode($details1); 

//events script... 

?> 
+0

我沒有看到你的代碼中的任何功能。你正在返回json_encoded數組 –

+0

你如何調用腳本?如果您通過POST或GET請求調用腳本,它將執行完整腳本,而不是任何函數。也許因爲這個原因,腳本給你的結果,但功能不是..雖然現在沒有定義的功能。如果你分享你的代碼功能版本,那很容易發現問題。也請分享你如何調用腳本。 –

+0

@KhanShahrukh,每個回聲json_encode()應該在函數中..例如回聲$細節將是一個函數,並且回顯$ details1將是一個不同的函數。現在,所有的數組都被回顯。但我想做功能。說功能公告()只是迴應$ details1。那麼如何聲明,定義和使用函數呢? –

回答

0

你應該做這樣的

public function somefunction() 
{ 
     $query = "SELECT priority FROM users WHERE regno='{$regno}' AND pass='{$password}' LIMIT 1"; 
    $res = mysql_query($query, $conn) or die(mysql_error()); 
    $found = mysql_fetch_array($res); 
    if($found) 
    { 
      $priority=$found['priority']; 


     } 

//echo $priority; 
echo 'news feed : <br> ' 
$sql="SELECT * FROM newsfeed"; 
$result=mysql_query($sql,$conn) or die(mysql_error()); 

while ($row=mysql_fetch_array($result)) { 



     $details[] = array(
      'name' => $row['name'], 
      'feed' => $row['feed'] 

     ); 
     } 
     echo json_encode($details); 
} 

現在,當你調用somefunction(),您將得到JSON編碼數組作爲結果

相關問題