[PHP] merge di 2 tabelle e insert su terza tabella

pabbelus

Nuovo Utente
25 Apr 2017
15
1
3
Ciao a tutti

Ho un problemino, ho le 2 seguenti tabelle

¦---bb_tickets---¦
¦ id ¦ owner ¦
¦-------------------¦
¦ 111 ¦ 2 ¦
¦ 145 ¦ 2 ¦
¦ 152 ¦ 3 ¦
¦-------------------¦


¦---bb_users-----¦
¦ id ¦ user ¦
¦-------------------¦
¦ 1 ¦ Admin ¦
¦ 2 ¦ PG ¦
¦ 3 ¦ FS ¦
¦-------------------¦


devo esportare le tabelle ottenendo quanto segue:


¦----Result----¦
¦ id ¦ user ¦
¦-----------------¦
¦ 111 ¦ PG ¦
¦ 145 ¦ PG ¦
¦-----------------¦



Come posso realizzare tutto ciò? Devo utilizzare la funzione JOIN? e in che modo?
Grazie in anticipo
PG
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
prova così
PHP:
//dati di connessione
$utente="PG";
$query="SELECT  owner.t as ow, user.u as us FROM bb_tickets as t, bb_users as u WHERE owner.t= id.u AND user.u='$utente'";
$result=mysqli_query($conn, $query);
while($riga=mysqli_fetch_assoc($result)){
    $id=$riga['ow'];
    $user=$riga['us'];
    //e qui fai quello che devi fare con le due variabili
}
 

pabbelus

Nuovo Utente
25 Apr 2017
15
1
3
Ciao, purtroppo non mi dà alcun risultato in uscita, ma:

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, string given in
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
metti un var_dump
PHP:
//dati di connessione
$utente="PG";
$query="SELECT  owner.t as ow, user.u as us FROM bb_tickets as t, bb_users as u WHERE owner.t= id.u AND user.u='$utente'";
$result=mysqli_query($conn, $query);
var_dump($result);//poi lo togli
while($riga=mysqli_fetch_assoc($result)){
    $id=$riga['ow'];
    $user=$riga['us'];
    //e qui fai quello che devi fare con le due variabili
}
se il var_dump ti da FALSE vuol dire che ho fatto probabilmente un errore nella querystringa, per prima cosa verifica l'esatta corrispondenza tra i nomi nella query e quelli che hai nella tabelle
 

pabbelus

Nuovo Utente
25 Apr 2017
15
1
3
bool(false)
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in

corrispondenza ok :-(
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
scusa, ma probabilmente dormivo (non avevo ancora preso il caffe) e ho invertito tutto:(
correggi
PHP:
$query="SELECT  owner.t as ow, user.u as us FROM bb_tickets as t, bb_users as u WHERE owner.t= id.u AND user.u='$utente'";
in
PHP:
$query="SELECT  t.owner as ow, u.user as us FROM bb_tickets as t, bb_users as u WHERE t.ownwr= u.id AND u.user='$utente'";
lascia il var_dump e verifica e sappimi dire

dimenticavo:
dai anche un occhio a https://www.mrw.it/mysql/join_6812.html
 

pabbelus

Nuovo Utente
25 Apr 2017
15
1
3
il file php:

PHP:
<?php

$host = "localhost";
$username = "root";
$password = "--------";
$dbname = "bb";

$conn =  new mysqli($host, $username, $password, $dbname) ;

$utente="PG";
$query="SELECT  t.owner as ow, u.user as us FROM bb_tickets as t, bb_users as u WHERE t.ownwr= u.id AND u.user='$utente'";
$result=mysqli_query($conn, $query);
//var_dump($result);//poi lo togli
while($riga=mysqli_fetch_assoc($result)){
    $id=$riga['ow'];
    $user=$riga['us'];
    //e qui fai quello che devi fare con le due variabili
}

?>

midà come risultato:

HTML:
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\xxxxx on line 19
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
scusa rimetti il var_dump, anzi aggiungine un altro per vedere se la querystringa viene scritta come deve essere
poi prova la query senza gli alias
PHP:
//...
$query="SELECT  bb_tickets.owner, bb_users.user FROM bb_tickets, bb_users WHERE bb_tickets.ownwr= bb_users.id AND bb_users.user='$utente'";
var_dump($query);//poi lo togli
$result=mysqli_query($conn, $query);
var_dump($result);//poi lo togli
while($riga=mysqli_fetch_assoc($result)){
    $id=$riga['bb_tickets.owner'];
    $user=$riga['bb_users.user'];
    //e qui fai quello che devi fare con le due variabili
}
se il secondo var_dump da ancora false il problema è o nella $conn e in $query

dimenticavo:
se non funziona ancora proviamo con due query senza join per capire dove è l'inghippo
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
oho oho mi sono accorto adesso, tu fai la connessione ad oggetti io sto usando il metodo procedurale
al posto di
$conn = new mysqli($host, $username, $password, $dbname) ;
metti
$conn = mysqli_connect($host,$username,$password, $db) or die (mysql_error());
oppure trasforma in oggetti le varie chiamate al db
 

pabbelus

Nuovo Utente
25 Apr 2017
15
1
3
allora, ora ho il secondo bool false, e:

HTML:
Notice: Undefined variable: utente in C:\xampp\htdocs\hesk\tickets\test4.php on line 15
string(122) "SELECT bb_tickets.owner, bb_users.user FROM bb_tickets, bb_users WHERE bb_tickets.ownwr= bb_users.id AND bb_users.user=''" bool(false) 
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\hesk\tickets\test4.php on line 19
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
147
63
PR
www.borgo-italia.it
ciao
ho fatto le prove e questo funziona
controlla di aver scritto bene i nomi delle variabili, dei campi e delle tabelle e bisogna mettere l'alias ai nomi dei campi
PHP:
<?php
$host = 'localhost';
$username = 'root';
$password = 'password';
$db = 'prove';
$conn = mysqli_connect($host,$username,$password, $db) or die (mysql_error());
//prova per vedere le tabelle
$query="SELECT * FROM bb_tickets";
$ris=mysqli_query($conn,$query);
while($riga=mysqli_fetch_assoc($ris)){
    $id=$riga['id'];
    $owner=$riga['owner'];
    echo "$id - $owner<br>";
}
$query="SELECT * FROM bb_users";
$ris=mysqli_query($conn,$query);
while($riga=mysqli_fetch_assoc($ris)){
    $id=$riga['id'];
    $user=$riga['user'];
    echo "$id - $user<br>";
}
/*output
111 - 2
145 - 2
152 - 3
1 - Admin
2 - PG
3 - PG
*/
$utente="PG";
//verificato: BISOGNA usare gli alias per i nomi dei campi
$query="SELECT  bb_tickets.id as idu, bb_users.user as us FROM bb_tickets, bb_users WHERE bb_tickets.owner= bb_users.id AND bb_users.user='$utente'";
$ris_r=mysqli_query($conn,$query);
//var_dump($ris);// OK
while($riga=mysqli_fetch_assoc($ris_r)){
    $id=$riga['idu'];
    $user=$riga['us'];
    echo "$id - $user<br>";
}
/*output
111 - PG
145 - PG
152 - PG
*/
?>
tra l'altro il tuo var_dump ti restituisce ....bb_users.user='' dove è andato a finire il valore di $utente?
 

pabbelus

Nuovo Utente
25 Apr 2017
15
1
3
ok, secondo me va, io nel frattempo sono riuscito a creare questa query:

PHP:
SELECT bb_tickets.id, bb_users.user FROM bb_tickets, bb_users WHERE bb_users.id = '3';

e il risultato:

id user
111 FS
145 FS
152 FS

ora devo copiare i valori dentro result e dovrei essere a posto

ti faccio sapere e ti ringrazio tantissimo per l'aiuto

GRAZIE

Pablo
 
Discussioni simili
Autore Titolo Forum Risposte Data
neo996sps [PHP + MySQL] Merge di due tabelle Mysql differenti e non relazionate PHP 6
G [PHP] Merge array PHP 4
A invio massivo dati a file php Javascript 4
Z MySql injection PHP PHP 1
V PHP form intersecate PHP 0
I [Offro][Retribuito] Programmatore Php Offerte e Richieste di Lavoro e/o Collaborazione 0
P Funzione jQuery Ajax invio file a php jQuery 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
E Transaction php PHP 11
B ciclare file xml con PHP PHP 1
L Estrazione dati php Database 6
A Aiuto per pagina php PHP 0
E Php select option e ajax PHP 23
I Aiuto php Dependent Lookup PHP 0
T arretramento versione PHP... PHP 3
D problema php mysql PHP 1
D problema php mysql PHP 1
E Barra di avanzamento codice PHP PHP 4
G creazione menu a tendina e invio a pagina php PHP 1
A inserire variabile php colore in div html PHP 2
Z Video protetto con PHP PHP 0
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
I Eecuzione di javascript in ciclo foreach php. PHP 7
S Libreria PHP per creare file dwg o dxf PHP 0
A [cerco - retribuito] Sviluppatore Php freelance per progetti vari Offerte e Richieste di Lavoro e/o Collaborazione 2
L Google chart php mysql PHP 2
R Download file multipli da directory php PHP 0
F pagina dinamica PHP PHP 3
P Rimozione automatica url da sitemap.xml con PHP PHP 1
L php tinymce mi duplica la classe label PHP 3
S Errore PHP - Notice: Undefined index ... PHP 14
N file manager da php 5 a 7 PHP 15
M Utilizzare la funzione mysql_num_rows() in PHP 5 PHP 3
elpirata Update dinamico informazioni scritte in una pagina php jQuery 11
N Mysql_result per PHP 7 PHP 2
Emix Select concatenate php sql ajax PHP 2
P Modifica con PHP di un node in una sitemap xml PHP 0
D Come usare funzione php PHP 6
P Cancellazione specifici files in una folder php PHP 1
R Tradurre stringhe con php e google translator PHP 4
I Salvataggio snapshot IPCAM tramite PHP PHP 5
felino PHP e script generazione file excel PHP 2
L Aiuto per programma web php/mySQL PHP 2
A Estrapolare parti di testo con PHP PHP 2
A Aiuto php colore diverso PHP 10
E Errore di lettura php in html PHP 8
J php, scegliere autista da select e mostrare se ha fatto un incidente PHP 8
P Passaggio id php a javascript PHP 6
MarcoGrazia [PHP] [regex] Validare un url PHP 2
W Rinominare un file in PHP PHP 7

Discussioni simili