• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Angular kod umożliwiający sięgnięcia do tabel powiązanych

VPS Starter Arubacloud
0 głosów
434 wizyt
pytanie zadane 21 lipca 2018 w JavaScript przez sauber94 Nowicjusz (140 p.)

Witam, posiadam bazę danych na phpMyAdmin. Korzystam obecnie z tego kodu zmodyfikowanego pod swoje tabele:
https://www.webslesson.info/2016/09/angularjs-tutorial-with-php-update-edit-mysql-table-data.html


Załóżmy, że mam tabele: ZADANIE, PRACOWNIK, MATERIAŁY, SPRZĘT. Muszę przypisać do danego zadania: pracownika oraz materiały jak i sprzęt. Czy ktoś wie jak coś takiego zrobić w Angular?

2 odpowiedzi

0 głosów
odpowiedź 21 lipca 2018 przez zgrybus Pasjonat (24,860 p.)
Pierwsza rada - usuń wersje 1 i przejdź na normalnego Angualar :)
1
komentarz 21 lipca 2018 przez sauber94 Nowicjusz (140 p.)
A co w tym jest nie tak?
1
komentarz 21 lipca 2018 przez Tomek Sochacki Ekspert (227,510 p.)
Na Angular1 nadal stoi wiele apek komercyjnych i prawda jest taka, że w wielu przypadkach trzeba je utrzymywac, bo klient nie zawsze zapłaci Ci za migrację do Angular 6 jeśli nie da mu to realnych korzyści... Chhyba, że masz szczęście do takich kasiastych klientów, którzy nie mają pomysłu co zrobić z nadmiarem gotówki :)

A tak na prawdę do czy praujesz w AngularJS, Angular, React, Vue itp. to de facto żadna różnica. Poznasz jeden framework i zalapiesz ideę pracy z modelem, kontrolerem i widokiem to poradzisz sobie w każdym innym, kwestia doczytania dokumentacji i zrobienia 1-2 projektów.
0 głosów
odpowiedź 21 lipca 2018 przez Tomek Sochacki Ekspert (227,510 p.)
Ale chwila, tak na prawdę to Angular w ogóle nie powinien nawet wiedzieć gdzie są zapisane dane w back-endzie i skąd się one biorą?

Zapisy do bazy najlepiej realizować bezpośrednio w back-endzie, który fajnie żeby pełnił rolę API z odpowiednimi endpointami. W Angular natomiast możesz sobie po prostu stworzyć formularz, którego dane wyślesz do back-endu i tam dokonasz zapisu do bazy.

Napisz z czym dokładniej masz problem i co dokładnie chcesz zrobić w Angular bo niezbyt rozumiem samo pytanie...
komentarz 22 lipca 2018 przez sauber94 Nowicjusz (140 p.)

Zrobiłem sobie już taki kod, który czyta mi z danej tabeli z określonego rekordu w moim przypadku imię oraz nazwisko klientów w bazie i jednego z nich mogę sobie wybrać. Mimo wszystko mam problem. Dodając poniższy kod do indexu głównego (ten co dałem wyżej) nieco mi się to wszystko rozwala, screen: https://zapodaj.net/images/75764aa7b1ac1.png

index.php

<!DOCTYPE html>  
 <html>  
      <head>  
           <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular.min.js"></script>  
           <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />  
      </head>  
      <body>  
           <br /><br />  
           <div class="container" style="width:600px;">  
                <h3 align="center">Wybierz imie klienta</h3>  
                <br />  
                <div ng-app="myapp" ng-controller="usercontroller" ng-init="loadKlient()">  
                     <select name="klient" ng-model="klient" class="form-control" ng-change="loadState()">  
                          <option value="">Wybierz klienta</option>  
                          <option ng-repeat="klient in klients" >{{klient.imie}} {{klient.nazwisko}}</option>  
                     </select>  
                     <br />   
                </div>  
           </div>  
      </body>  
 </html>  
 <script>  
 var app = angular.module("myapp",[]);  
 app.controller("usercontroller", function($scope, $http){  
      $scope.loadKlient = function(){  
           $http.get("load_klient.php")  
           .success(function(data){  
                $scope.klients = data;  
           })  
      }  
 });  
 </script>  

load_klient.php

<?php  
 //load_klient.php  
 $connect = mysqli_connect("localhost", "root", "", "sampledb");  
 $output = array();  
 $query = "SELECT * FROM klient ORDER BY imie ASC";  
 $result = mysqli_query($connect, $query);  
 while($row = mysqli_fetch_array($result))  
 {  
      $output[] = $row;  
 }  
 echo json_encode($output);  
 ?>  

 

komentarz 22 lipca 2018 przez Tomek Sochacki Ekspert (227,510 p.)
komentarz 22 lipca 2018 przez sauber94 Nowicjusz (140 p.)

Jak wstawię ng-cloak to niby usunie mi te 'krzaki' lecz nie działa button do zatwierdzenia danych oraz znikają dane które tak naprawdę są w bazie.

Wydaje mi się, że coś jest nie tak z kodem poniżej tak jakby blokował dostęp do bazy danych :

<div ng-app="myapp" ng-controller="usercontroller" ng-init="loadKlient()">  
                     <select name="klient" ng-model="klient" class="form-control" ng-change="loadState()">  
                          <option value="">Wybierz klienta</option>  
                          <option ng-repeat="klient in klients" >{{klient.imie}} {{klient.nazwisko}}</option>  
                     </select>  
                     <br />   
                </div>  

 

komentarz 22 lipca 2018 przez Tomek Sochacki Ekspert (227,510 p.)
a próbowałeś w ogole próbować debugowac kod lub chociaż poprzez konsolę sprawdzać wszystkie dane?
komentarz 22 lipca 2018 przez sauber94 Nowicjusz (140 p.)
Debugowałem przez Visual Studio Code - 0 błędów.

Podobne pytania

0 głosów
1 odpowiedź 98 wizyt
0 głosów
3 odpowiedzi 476 wizyt
pytanie zadane 29 czerwca 2016 w JavaScript przez erx700 Gaduła (3,430 p.)

92,454 zapytań

141,262 odpowiedzi

319,099 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...