par
moogli » 01 juil. 2014, 20:39
array(16) { [0]=> string(16) "2014061110000674" ["tn"]=> string(16) "2014061110000674" [1]=> string(54) "[xxx] Ticket 2000000921 - Modifs pour formulaire PO" ["title"]=> string(54) "[adixen] Ticket 2000000921 - Modifs pour formulaire PO" [2]=> string(19) "2014-06-11 17:20:03" ["create_time"]=> string(19) "2014-06-11 17:20:03" [3]=> string(19) "2014-06-23 08:10:59" ["change_time"]=> string(19) "2014-06-23 08:10:59" [4]=> string(5) "Ferm�" ["name"]=> string(15) "TMA - Evolution" [5]=> string(9) "2 Normale" [6]=> string(25) "
[email protected]" ["customer_user_id"]=> string(25) "
[email protected]" [7]=> string(15) "TMA - Evolution" [8]=> string(10) "2000000921" ["freetext2"]=> string(10) "2000000921" }
le résultat n'est pas cohérent pour un fetch_array, a moins que les doublons ne soit pas nommé.
Donc avec $etat_test = "ticket_state.name"; j'arrive bien à récupérer l'état.
Par contre array_push($etat_ticket , $ticket[$etat_test]); ne fonctionne pas.
non, d'après ton tableau c'est $ticket[4] qui te donne la valeur fermé (attention tu a un problème de d'encodage a priori).
il n'y a pas d'index
ticket_state.name dans le tableau.
oui la solution des alias est la plus simple surtout que la requête l'est aussi et a peu de champs
je ferais un truc dans le genre (en virant les choses inutiles comme inner qui est la propriété par défaut)
[mysql]
SELECT
t.tn,
t.title,
t.create_time,
t.change_time,
ts.name stateName,
tp.name priorityName,
customer_user_id,
tt.name typeName,
freetext2
FROM ticket t
JOIN time_accounting ON ticket.id = time_accounting.ticket_id
JOIN article ON time_accounting.article_id = article.id
JOIN ticket_state ts ON ticket.ticket_state_id = ticket_state.id
JOIN ticket_priority tp ON ticket.ticket_priority_id = ticket_priority.id
JOIN ticket_type tt ON ticket.type_id = ticket_type.id
WHERE t.queue_id = 25
AND article.create_time BETWEEN '2014-06-15' AND '2014-06-17'
[/mysql]
[quote="Fripou"]
array(16) { [0]=> string(16) "2014061110000674" ["tn"]=> string(16) "2014061110000674" [1]=> string(54) "[xxx] Ticket 2000000921 - Modifs pour formulaire PO" ["title"]=> string(54) "[adixen] Ticket 2000000921 - Modifs pour formulaire PO" [2]=> string(19) "2014-06-11 17:20:03" ["create_time"]=> string(19) "2014-06-11 17:20:03" [3]=> string(19) "2014-06-23 08:10:59" ["change_time"]=> string(19) "2014-06-23 08:10:59" [4]=> string(5) "Ferm�" ["name"]=> string(15) "TMA - Evolution" [5]=> string(9) "2 Normale" [6]=> string(25) "
[email protected]" ["customer_user_id"]=> string(25) "
[email protected]" [7]=> string(15) "TMA - Evolution" [8]=> string(10) "2000000921" ["freetext2"]=> string(10) "2000000921" }
[/quote]
le résultat n'est pas cohérent pour un fetch_array, a moins que les doublons ne soit pas nommé.
[quote="Fripou"]
Donc avec $etat_test = "ticket_state.name"; j'arrive bien à récupérer l'état.
Par contre array_push($etat_ticket , $ticket[$etat_test]); ne fonctionne pas.
[/quote]
non, d'après ton tableau c'est $ticket[4] qui te donne la valeur fermé (attention tu a un problème de d'encodage a priori).
il n'y a pas d'index [b]ticket_state.name[/b] dans le tableau.
oui la solution des alias est la plus simple surtout que la requête l'est aussi et a peu de champs ;)
je ferais un truc dans le genre (en virant les choses inutiles comme inner qui est la propriété par défaut)
[mysql]
SELECT
t.tn,
t.title,
t.create_time,
t.change_time,
ts.name stateName,
tp.name priorityName,
customer_user_id,
tt.name typeName,
freetext2
FROM ticket t
JOIN time_accounting ON ticket.id = time_accounting.ticket_id
JOIN article ON time_accounting.article_id = article.id
JOIN ticket_state ts ON ticket.ticket_state_id = ticket_state.id
JOIN ticket_priority tp ON ticket.ticket_priority_id = ticket_priority.id
JOIN ticket_type tt ON ticket.type_id = ticket_type.id
WHERE t.queue_id = 25
AND article.create_time BETWEEN '2014-06-15' AND '2014-06-17'
[/mysql]