PFZ.nl - PHP Community: [ZF] overzichts tabel met 2 database tabellen maken - Frameworks - Forum - PFZ.nl - PHP Community

Je kunt niet antwoorden op dit topic
#1 06-03-2012 14:22
  • Pittienl
  • Groep: Forumleden
  • Posts: 4
  • Actief sinds: 06-03-2012
Hallo allemaal,

Ben nieuw op dit forum maar lees hier een hoop goede informatie dus dacht laat ik mijn vraag ook eens stellen.
Ik ben bezig met een kleine website in het zend framework en het liep allemaal van ze lije dakje tot ik tegen een probleem op ben gelopen waar ik zelf niet uit kan komen.

situatie :
2 losse tabellen in een database
tabel 1 Gebruikers : userid, gebruikersnaam, wachtwoord, voornaam, achternaam, woonplaats etc.
tabel 2 telefoon nummers : id, userid, telefoonnummer.

de reden dat ik 2 losse tabellen hiervoor gebruik is dat een persoon zoveel mogelijk telefoon nummers mag toevoegen als hij/zij zelf wil.

nu probeer ik een overzichts pagina te maken met daarop voor en achternaam, telefoon nummer en woonplaats.
En dan komt mijn probleem, ik heb een foreach staan die netjes alle records van de gebruikers tabel neerzet, maar het telefoon nummer dat in een andere tabel staat word op geen enkele manier getoond. Wel heb ik de 2 arrays al in me view gekregen zodat ik dit kan uitlezen maar hoe ga ik de juiste array bij de persoon krijgen?
hoe zou ik het beste in de foreach ,die in de template van de overzichtpagina staat, kunnen zoeken naar de bijpassende telefoon nummers?

Ik hoop dat het een beetje duidelijk is :$ alvast bedankt als iemand mij kan helpen :)

#2 06-03-2012 14:36
  • Ivo P.
  • Groep: Verenigingsleden
  • Posts: 4819
  • Actief sinds: 17-01-2002
hoe zien je array's eruit?
Ivo Peters
Developer en systeembeheerder @ PeHa ICT Services. blog.peha-ict.nl

#3 06-03-2012 14:44
  • Pittienl
  • Groep: Forumleden
  • Posts: 4
  • Actief sinds: 06-03-2012
Bedankt voor de snelle reactie, hierbij de 2 arrays

Useraccounts :
Array
(
[0] => Array
(
[usr_id] => 2
[acc_username] => pitbullnl
[acc_password] => cb3aefbdffbc81588f3d43c394428b16d4346b44
[acc_salt] => ce8d96d579d389e783f95b3772785783ea1a9854
[acc_email] => test@test.nl
[firstname] => Vincent
[lastname] => goldtest
)

[1] => Array
(
[usr_id] => 9
[acc_username] => test
[acc_password] => 74598fb9b7da24b6132d25556640f4b0005a8b98
[acc_salt] => $bbe%mcKD$QJv%dEXAJqZQYCH
[acc_email] => lol@lol.com
[firstname] => Cincent
[lastname] => tester
)

[2] => Array
(
[usr_id] => 11
[acc_username] => testaccount
[acc_password] => 68d2535eba79c18da9e04819a4e5e9b4bf73ff1f
[acc_salt] => b47g6KHAYnHKVJhTaeSWSmP&Z
[acc_email] => ctest@orange.nl
[firstname] => sjaakie
[lastname] => bonestaakie
)

[3] => Array
(
[usr_id] => 12
[acc_username] => playaccount
[acc_password] => 1d2bfef6513b033b78ba4539247973a74b47956a
[acc_salt] => T$XFdo%&&4bArfoI(07b!Mu%&
[acc_email] =>btest@orange.nl
[firstname] => sjatje
[lastname] => bonestaaf
)

)


Telefoon nummers :
Array
(
[0] => Array
(
[idphonenumber] => 1
[userid] => 2
[phonenumber] => 0123456789
[sortof] => 1
)

[1] => Array
(
[idphonenumber] => 2
[userid] => 2
[phonenumber] => 0123456789
[sortof] => 2
)

)

#4 06-03-2012 18:35
  • Roland F.
  • Groep: Forumleden
  • Posts: 152
  • Actief sinds: 01-02-2007
Is het niet veel makkelijker om de data op SQL niveau bij elkaar te zoeken...?

1
SELECT users.firstname, users.lastname, phonenumbers.phonenumber FROM users LEFT JOIN phonenumbers ON users.userid = phonenumbers.userid


[edit]
Of met fancy pancy Zend_Db_Select;

1
2
3
4
5
<?php
$select = $adapter->select();
$select
    ->from('users', array('firstname', 'lastname'))
    ->leftJoinUsing('phonenumbers', array('phonenumber'), 'userid');

Zoiets.. je zou de precieze argumenten even moeten controleren.

#5 06-03-2012 21:47
  • Pittienl
  • Groep: Forumleden
  • Posts: 4
  • Actief sinds: 06-03-2012
ok :) ik ga het eens proberen, bedankt

#6 07-03-2012 09:04
  • Pittienl
  • Groep: Forumleden
  • Posts: 4
  • Actief sinds: 06-03-2012
Bedankt het werkt :D, nu heb ik alleen als een user 2x 'phonenumber' heeft dat de gebruiker 2x in me
overzicht komt te staan, wanneer ik er een where bij zet om alleen de sortof 1 op te halen dan worden me andere gebruikers zonder telefoon nummer niet meer getoond. enige suggesties hiervoor ?

:edit:

heb het al gevonden :) met een if statement afgevangen lag nog een beetje te slapen denk ik
toch maar niet zo snel vragen haha


Inloggen wachtwoord vergeten? Aanmelden