Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Schema statie auto Renegade REN 1...

Magazine IT de incredere

Parere SKODA Octavia 3 2.0TDI 150CP

Achizitie telefon 1000-1200lei
 Unde gasesc o lampa buna pe gaz?

Consulta specialiștii... Und...

Fostul director al Frontex: Comis...

Construire anexa lipita de casa
 Ce folositi pentru urina mirosito...

Socializare in prezenta copiilor

Cont Samsung A32

Hotarare definitiva a instantei, ...
 Laptop office 2500 lei

un ceai bun

sugerarea bacsisului de catre pat...

Bara Golf 7 Variant
 

while in while

* - - - - 1 votes
  • Please log in to reply
2 replies to this topic

#1
flipper4u

flipper4u

    Member

  • Grup: Members
  • Posts: 386
  • Înscris: 18.08.2006
Salutare,

Am si eu o mica problema si nu-i dau de cap...
Cu putinele mele cunostinte de php si mysql, am reusit sa imi fac un mini-crud, insa la partea de read, cand am inceput sa o dezvolt ceva mai mult, m-am blocat.

structura mea tabelara este urmatoarea:

tabela #clients
idClient   |  nameClient
---------------------
1    | client 1
2 |   client 2

tabela #offer
idOffer  |   nameOffer  |   idClient
----------------------------------
1 | oferta 1 |   1
2    |   oferta 2   |    2
2 | oferta 3 |   2

tabela #offerItems
idOfferItem | idOffer  |   valueOfferItem  |   quantityOfferItem
----------------------------------------------------------------
1   |    1   |    14.25 | 2
2   |    1   |    37    |   50
3    |   1   |    12 | 10
4   |    2    |   16.2 | 14
5 | 2    |   15.4    |   14
6 | 3    |   164 |    2


<?php
include 'functions.php';
$response = array();
$sql= "
SELECT offer.idOffer, offer.nameOffer, offer.dateOffer, clients.idClient, clients.nameClient FROM offer
INNER JOIN clients ON (offer.idClient = clients.idClient)
ORDER BY idOffer ASC";
$sql. ="
SELECT
";
$result = $conn->query($sql);
if (!$result) {
$response['status'][] = "Invalid query";
}
if ($result) {
// extrage detaliile ofertei
while($row = $result->fetch_assoc()) {
$response['items'][] = array(
	 'idOffer' => $row['idOffer'],
	 'nameOffer' => $row['nameOffer'],
	 'nameClient' => $row['nameClient'],
	 'dateOffer' => $row['dateOffer'],
	 'countOfferItem' => 'XXXXX',
	 'totalOfferItem' => 'YYYYY'
);
}
}
else {
$response['status'][] = "0 results";
}
$conn->close();
echo json_encode($response);
die();
?>


raspunsul json generat este
{
"items": [
{
	 "idOffer": "1",
	 "nameOffer": "oferta test 1",
	 "nameClient": "firma 1",
	 "dateOffer": "2020-12-31",
	 "countOfferItem": "XXXXX",
	 "totalOfferItem": "YYYYY"
},
{
	 "idOffer": "2",
	 "nameOffer": "oferta test 2",
	 "nameClient": "firma 2",
	 "dateOffer": "2020-08-12",
	 "countOfferItem": "XXXXX",
	 "totalOfferItem": "YYYYY"
}
]
}



Ceea ce partial este corect, insa nu stiu cum sa inlocuiesc XXXX si YYYY cu count de OfferItem si total de OfferItem (valueOfferItem x quantityOfferItem). Cred ca mi-ar mai trebui un while in interiorul primului while, dar tot ce am incercat a esuat lamentabil.


Este un proiect simplut, prin care vreau sa invat mai bine Angular (frontend) si cu ocazia asta imi bag nasul si in backendul de PHP, ca sa-mi dezvolt cat mai mult cunostintele. Multumesc mult pentru orice ajutor.


Toate bune.

Edited by flipper4u, 26 August 2020 - 23:27.


#2
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006
SELECT... FROM offeritems
JOIN offers...
JOIN clients...

Altfel spus: te gândești ce vrei să afisezi. Vrei să afișezi toate offer items, și informațiile relevante? Atunci selecteze offeritems, și de acolo pornind, adaugi alte tabele de care ai nevoie.

#3
_Smiley_

_Smiley_

    Guru Member

  • Grup: Senior Members
  • Posts: 19,943
  • Înscris: 24.02.2006
astfel de valori (totaluri, functii pe un set intreg de date etc.) se obtin mult mai usor in sql decat in php.
citeste despre functiile sum si count, o sa ai nevoie de ele

Anunturi

Chirurgia cranio-cerebrală minim invazivă Chirurgia cranio-cerebrală minim invazivă

Tehnicile minim invazive impun utilizarea unei tehnologii ultramoderne.

Endoscoapele operatorii de diverse tipuri, microscopul operator dedicat, neuronavigația, neuroelectrofiziologia, tehnicile avansate de anestezie, chirurgia cu pacientul treaz reprezintă armamentarium fără de care neurochirurgia prin "gaura cheii" nu ar fi posibilă. Folosind tehnicile de mai sus, tratăm un spectru larg de patologii cranio-cerebrale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate