Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.05.2015, 16:15
Интересующийся
Отправить личное сообщение для Paul_Wahtel Посмотреть профиль Найти все сообщения от Paul_Wahtel
 
Регистрация: 26.03.2015
Сообщений: 17

Angularjs + MySql помогите плс разобраться
Я делаю приложение, где надо добавлять, выводить, удалять и переписывать юзеров, с добавлением и выводом не возникает проблем а вот с удалением и изменением полная лажа, вот мой HTML с таблицей юзеров

<div class="container">
  <h2>Users</h2>      
  <table class="table table-condensed">
    <thead>
      <tr>
        <th>Id</th>
        <th>Name</th>
        <th>Telephone</th>
        <th>Email</th>
        <th>City</th>
        <th>Address</th>
        <th>State</th>
        <th>Zip code</th>
        <th>Delete user</th>
      </tr>
    </thead>
    <tbody ng-repeat="user in users">
      <tr>
        <td>{{user.id}}</td>
        <td>{{user.name}}</td>
        <td>{{user.telephone}}</td>
        <td>{{user.email}}</td>
        <td>{{user.city}}</td>
        <td>{{user.address}}</td>
        <td>{{user.state}}</td>
        <td>{{user.zip}}</td>
        <td><a class="btn btn-default" href="#/users?action=del&id={{user.id}}" ng-click="delete(user.id)" role="button">Delete &raquo;</a></td>
      </tr>
    </tbody>
  </table>
</div>


вот мой контроллер

app.controller('MainController', ['$scope', '$http', '$routeParams', function($scope, $http, $routeParams) {
	
	$http.get('server.php')
	.success(function(data) {
		$scope.users = data
	})
	.error(function(err) {
		console.log(err);
	});

	$scope.delete = function(id) {
		console.log(id);
	    $http.delete('server.php')
	    .success(function(data) {
			$scope.users = data
		})
		.error(function(err) {
			console.log(err);
		});
	  };
}]);


а вот сам сервер

<?php
define("DB_HOST", "localhost");
define("DB_LOGIN", "root");
define("DB_PASSWORD", "000000");
define("DB_NAME", "users");


mysql_connect(DB_HOST, DB_LOGIN, DB_PASSWORD);
mysql_select_db(DB_NAME);

if ($_SERVER['REQUEST_METHOD'] == "POST") {
  $data = json_decode(file_get_contents("php://input"));
  $name = mysql_real_escape_string($data->name);
  $email = mysql_real_escape_string($data->email);
  $telephone = mysql_real_escape_string($data->telephone);
  $city = mysql_real_escape_string($data->city);
  $address = mysql_real_escape_string($data->address);
  $state = mysql_real_escape_string($data->state);
  $zip = mysql_real_escape_string($data->zip);



  $sql = "INSERT INTO info(`name`, `email`, `telephone`, `city`, `address`, `state`, `zip`)VALUES(
   '".$name."', '".$email."', '".$telephone."', '".$city."', '".$address."', '".$state."', '".$zip."')";
  mysql_query($sql) or die(mysql_error());
} elseif ($_SERVER['REQUEST_METHOD'] == 'GET') {
    $result = mysql_query("select * from `info` ");

    $data = array();

    while ($row = mysql_fetch_array($result)) {
      $data[] = $row;
    }
        print json_encode($data);
    } 
    

    if(isset($_GET["del"])) {
      $id = abs((int)$_GET["id"]);
      if($id > 0)
      {
      $sql = "DELETE FROM `info`
              WHERE id = $id";
      mysql_query($sql) or die(mysql_error());
      }
    }

?>

по нажатию на ссылку не срабатывает запрос в БД, не пойму почему, вроде все корректно, по нажатию на ссылку в массив GET появляется элемент del, и запрос написан верно, я уже два дня ломаю голову, перерыл все, нигде не могу найти пример где бы показывали сервреную часть тоже, может кто то знает видео-уроки CRUD в angularjs?
Хотелось бы уже доделать это задание, не прошу делать за меня, лишь объясните где ошибка, спасибо.

Последний раз редактировалось Paul_Wahtel, 25.05.2015 в 16:17.
Ответить с цитированием
  #2 (permalink)  
Старый 25.05.2015, 16:19
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Paul_Wahtel, так может вопрос-то не по Ангулару... Его дело - клиентская сторона.

Если ты получил ИД - отправил на сервер. Дальше дело серверных скриптов.
Ответить с цитированием
  #3 (permalink)  
Старый 25.05.2015, 16:25
Интересующийся
Отправить личное сообщение для Paul_Wahtel Посмотреть профиль Найти все сообщения от Paul_Wahtel
 
Регистрация: 26.03.2015
Сообщений: 17

Ну вопрос задал сюда, так как подумал что ошибка допущена где то именно в ангуларе, потому что сам запрос прост, к тому же есть много программистов которые работают и на клиентской стороне и на серверной, думал может здесь найду таких)
Я просто уже не знаю где дальше копать, что искать уже все что мог перепробовал, пытался миллион примеров использовать но все бестолку.
Ответить с цитированием
  #4 (permalink)  
Старый 25.05.2015, 16:33
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от Paul_Wahtel
Я просто уже не знаю где дальше копать
Проверь правильно ли формируешь УРЛ на удаление... Получает ли сервер тот ИДшник... Удаляет ли ту запись...
Ну и, что присылает в ответ.
Ответить с цитированием
  #5 (permalink)  
Старый 25.05.2015, 16:44
Интересующийся
Отправить личное сообщение для Paul_Wahtel Посмотреть профиль Найти все сообщения от Paul_Wahtel
 
Регистрация: 26.03.2015
Сообщений: 17

А может вы знаете какие нибудь tutorial, где есть серверная сторона, а то я слаб на сервере, мне ангулар дается легко а тут дали задание с сервером и у меня такой ступр начался что я уже 3 дня сижу над простым заданием, и у меня уже все готово что касается стороны клиента, а тут лажа, просто в основном во всех видео показывают сервер в виде node.js а с php ничего(
Ответить с цитированием
  #6 (permalink)  
Старый 25.05.2015, 19:10
Интересующийся
Отправить личное сообщение для Paul_Wahtel Посмотреть профиль Найти все сообщения от Paul_Wahtel
 
Регистрация: 26.03.2015
Сообщений: 17

Судя по всему проблема в этом месте
ng-click="delete(user.id)"


так как туда не передается id, как его правильно передать туда?
Ответить с цитированием
  #7 (permalink)  
Старый 26.05.2015, 11:59
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от Paul_Wahtel
как его правильно передать туда?
Вот пример...

<!DOCTYPE html>
<html  ng-app="phonecatApp">
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<!--
<script src='http://code.jquery.com/jquery-latest.js'></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
<link rel="stylesheet/less" type="text/css" href="style.less">
<script src="http://cdnjs.cloudflare.com/ajax/libs/less.js/2.5.0/less.min.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
var phonecatApp = angular.module('phonecatApp', []);

phonecatApp.controller('PhoneListCtrl', function ($scope) {
  $scope.phones = [
    {'name': 'Nexus S',
     'snippet': 'Fast just got faster with Nexus S.'},
    {'name': 'Motorola XOOM™ with Wi-Fi',
     'snippet': 'The Next, Next Generation tablet.'},
    {'name': 'MOTOROLA XOOM™',
     'snippet': 'The Next, Next Generation tablet.'}
  ];
  $scope.del=function(Id){
	alert(Id);
  };
});
</script>
</head>
<body ng-controller="PhoneListCtrl">

  <ul>
    <li ng-repeat="phone in phones" ng-click='del(phone.name)'>
      <span>{{phone.name}}</span>
      <p>{{phone.snippet}}</p>
    </li>
  </ul>
</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите разобраться с this uroboros7 jQuery 4 02.01.2015 00:56
Помогите разобраться с калькулятором Maksim858 Ваши сайты и скрипты 1 27.12.2014 13:23
Получение ответа сервера через iframe и xhr. Помогите разобраться. Arconas AJAX и COMET 0 26.02.2013 10:38
Помогите пожалуйста разобраться Kupu4 Ваши сайты и скрипты 0 21.01.2010 10:44
Помогите разобраться с галереей IMAGIN yana_studio Общие вопросы Javascript 4 12.12.2009 17:24