как передать параметр URL в переменную php с помощью маршрутизации angularjs?
Это routing_script.js:
var scotchApp = angular.module('HRModuleApp', ['ngRoute']); scotchApp.config(function($routeProvider) { $routeProvider .when('/', { templateUrl : 'pages/home.html', controller : 'mainController' }) // route for the home page .when('/home', { templateUrl : 'pages/home.html', controller : 'mainController' }) // route for the contact page .when('/public_profile:user_id', { templateUrl : 'pages/public_profile.php', controller : 'contactController' }) // route for the contact page .when('/add_user', { templateUrl : 'pages/add_user.html', controller : 'contactController' }); });
что еще я должен добавить к этому? как перенаправить параметр id_user из url в переменную php … так что php может выполнять некоторые sql …
Я также читал о том, как угловой не для чего-то подобного … но мне это нужно … и мне нужно срочно …
Спасибо!!!
здесь переменная $ term, которая нуждается в этом параметре url в файле php:
<?php $term = mysql_real_escape_string($_REQUEST['user_id']);
Хорошо, если вы получили свой вопрос правильно, вы хотите, чтобы «страницы / public_profile.php» читали параметр GET, передаваемый угловым, чтобы его можно было выполнить до визуализации представления, возможно, что-то вроде этого делает трюк:
.when('/public_profile/:user_id', { templateUrl: function(attrs){ return 'pages/public_profile.php?user_id=' + attrs.user_id; }, controller : 'contactController' })
путем изменения вашего шаблона «шаблон» из строки в функцию, которая динамически добавляет параметр к URL-адресу в качестве параметра get
В вашем contactController
function contactcontroller(['$scope','$stateParams','$http'],function($scope,$stateParams,$http){ //here you have your user_id var user_id = $stateParams.user_id; //now you can use $http to make a request to your server $http.post('your_url',{'usr_id':user_id}) .success(function(response){ //handle OK response }) .error(function(response){ //habndle error }) })
ПРИМЕЧАНИЕ. Вы должны переместить все вызовы $ https в службу.
это javascript, который запускает событие onclick … щелчок по строке в datatable … ссылка, которую я получаю, выглядит нормально, но php-скрипт не получает этот URL-адрес
$(document).ready(function() { $(function(){ $.ajax({ url: 'http://localhost/hrmodel/public/pages/employees_datatables.php', data: {}, dataType: 'json', success: function (data) { // Check if received data is indeed JSON Object and not a string if (data.substring) { console.log('is string'); } else{ console.log('is not string'); } // Setup for individual column search - add a text input to each footer cell $('#employees tfoot th').each( function () { var title = $('#employees thead th').eq( $(this).index() ).text(); $(this).html( '<input type="text" placeholder="Search '+title+'" />' ); } ); // Initialize Datatable var table = $('#employees').DataTable( { "bProcessing": true, "bSearchable" : true, "bSortable" : true, "bFilter": true, "bInfo": true, "bPaginate" : true, "data" : data, "columns": [ { "data": "korisnik_id", "visible": false, "searchable": false }, { "data": "ime" }, { "data": "prezime" }, { "data": "3" }, { "data": "naziv" } ] } ); // Apply the search for each column table.columns().eq( 0 ).each( function ( colIdx ) { $( 'input', table.column( colIdx ).footer() ).on( 'keyup change', function () { table .column( colIdx ) .search( this.value ) .draw(); } ); } ); // Highlighting rows var lastIdx = null; $('#employees tbody').on( 'mouseover', 'td', function () { var colIdx = table.cell(this).index().column; if ( colIdx !== lastIdx ) { $( table.cells().nodes() ).removeClass( 'highlight' ); $( table.column( colIdx ).nodes() ).addClass( 'highlight' ); } } ) .on( 'mouseleave', function () { $( table.cells().nodes() ).removeClass( 'highlight' ); } ); // Send user_id of selected row to PHP script $('#employees tbody').on( 'click', 'tr', function () { var id = table.row( this ).data().korisnik_id; $(this).addClass('chosenUser'); window.location = '#/public_profile.php?user_id=' + id; /* $.ajax({ type: 'POST', url: 'http://localhost/hrmodel/public/pages/public_profile.php', data: { user_id : id }, dataType: 'json', success: function (data) {} } ); */ } ); } // End of ajax : success }); // End of .ajax request }); // End of function() }); // End of document.ready()