【问题标题】:PHP and JavaScriptPHP 和 JavaScript
【发布时间】:2016-09-10 04:40:49
【问题描述】:

我知道这两个东西在不同的位置运行,但我想知道是否有在我的 java 脚本文件中包含一点 php 我需要生成唯一的网址来链接到个人资料和新闻帖子。即 /#/news/IDHERE 和 /#/profile/IDHERE 下面我包含了为我构建导航的脚本

// create the module and name it scotchApp    
var scotchApp = angular.module('RoutingApp', ['ngRoute']);  

// configure our routes    
scotchApp.config(function($routeProvider) {  
    $routeProvider  
  //Routes for HH TAB!!!
    // route for the home page    
        .when('/', {  
        templateUrl: 'staff/staff/_frontend/news.php',  
        controller: 'mainController'  
    })  

    // route for the about page    
    .when('/about', {  
        templateUrl: 'pages/about.html',  
        controller: 'aboutController'  
    })  

    // route for the team page    
    .when('/team', {  
        templateUrl: 'pages/test/test.html',  
        controller: 'teamController'  
    }) 

    // route for the Job page    
    .when('/job', {  
        templateUrl: 'pages/test/test1.html',  
        controller: 'jobController'  
    }) 

    // route for the FAQ page    
    .when('/faq', {  
        templateUrl: 'pages/test/test2.html',  
        controller: 'faqController'  
    }) 

    // route for the Complaint page    
    .when('/complaint', {  
        templateUrl: 'pages/test/index.php',  
        controller: 'complaintController'  
    })

//Routes for Radio Player
    // route for the request page
         .when('/request', {  
        templateUrl: 'pages/requestline.php',  
        controller: 'requestsController'  
    })  

 // route for the Register page 
        .when('/register', {  
        templateUrl: 'pages/register.php',  
        controller: 'registerController'  
    })

});  

//comtrollers for HH TAB  
// home   
scotchApp.controller('mainController', function($scope) {     
    $scope.HomeMessage = 'Home Controller Called !!!';  
});  

//About
scotchApp.controller('aboutController', function($scope) {  
    $scope.AboutMessage = 'About Controller Called !!!';  
}); 

// team
scotchApp.controller('teamController', function($scope) {   
    $scope.teamMessage = 'team Controller Called !!!';  
});  

//jobs
scotchApp.controller('jobController', function($scope) {  
    $scope.jobMessage = 'Jobs Controller Called !!!';  
}); 

//faq
scotchApp.controller('faqController', function($scope) {  
    $scope.faqMessage = 'FAQ Controller Called !!!';  
});  

//complaint
scotchApp.controller('complaintController', function($scope) {  
    $scope.complaintMessage = 'Complaint Controller Called !!!';  
}); 

//controllers for radio player!!
//requests
scotchApp.controller('requestsController', function($scope) {  
    $scope.requestsMessage = 'Requests Controller Called !!!';  
}); 

//register
scotchApp.controller('registerController', function($scope) {  
    $scope.registerMessage = 'Register Controller Called !!!';  
}); 

假设我有一个运行查询的文件,这里是我的一个页面的示例!

$query = $db->query( "SELECT * FROM `news` WHERE `category` = '13' AND `status` = '1' ORDER BY `news`.`id` DESC" );
$array = $db->assoc( $query );

while( $array = $db->assoc( $query ) ) {
    $time = date( "d/m/y ", $array['stamp'] );
    $query99 = $db->query( "SELECT habbo FROM users WHERE id = '{$array['author']}'" );
    $array99 = $db->assoc( $query99 );
    $cquery = $db->query( "SELECT * FROM news_comments WHERE article = '{$array['id']}'" );             
    $comment = $db->num( $cquery );
?>
<a href="#/news/<?php echo $array['id"];?>></a>

我需要 js 文件中的 url 相同。我只是不太确定该怎么做?任何帮助表示赞赏。对其他解决方案的想法持开放态度!

【问题讨论】:

    标签: javascript php jquery angularjs


    【解决方案1】:

    有很多方法可以解决这个问题

    您可以简单地将 JS 文件扩展名更改为 .php,然后只输出 Javascript 中的链接,因为您希望这可能会产生与您的 IDE 混淆的意外副作用(因为它将假定一个常规 php 文件)。或者,您可以将其命名为 .js.php 以增加清晰度,但我不知道这是否能解决大多数 IDE 的问题(这更符合您的理智)

    还有很多其他选项,例如使用上述方法将链接输出到数组,然后在您的普通 JS 文件中迭代它们。如果采用这种方法,最好在两个文件中注释为什么设置数据或从何处获取数据以供将来参考。

    【讨论】:

    • 所以我一直在查看 w3schools w3schools.com/angular/angular_sql.asp 上的一个示例,该示例显示了如何正确返回查询,但我不确定如何将其转换为我的查询
    • 实际上可能有更好的方法来做到这一点。路由参数可能是您正在寻找的:docs.angularjs.org/api/ngRoute/service/$routeParams 您将使用它们来触发 AJAX 请求(或从服务请求数据)以返回查询数据。本质上,可能不需要在路线上存储数据。至于链接到模板中的那些路由,当然你仍然需要 PHP 来生成链接。
    • // 新闻页面的路由 .when('/news/:id', { templateUrl: 'pages/news/:id', controller: 'newsController' }) ===== =========== //news scotchApp.controller('newsController', function($scope, $routeParams) { $scope.model = { message: $routeParams } });所以我正在使用 php 输入 url,这是我的 js 文件,但我似乎无法让它工作
    猜你喜欢
    • 2011-06-07
    • 2019-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-18
    • 2010-09-18
    • 2011-04-11
    • 2011-01-20
    相关资源
    最近更新 更多