doppia query a due db diversi

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
Salve ragazzi ho un problema. Devo inviare due query a due db diversi
ma la query chiamata query2 che deve fare l'update non mi funziona.
Mi fa conflitto con la query chiamata query, se infatti chiamassi la query2 query funzionerebbe query2 ma non query.
Come posso farle funzionare entrambi? dove sbaglio?

PHP:
<?PHP 
session_start();
header('Cache-Control: no-cache');
header('Pragma: no-cache');
$dbhost = 'localhost'; 
$dbuser = 'dbuser'; 
$dbpass = 'dbpass'; 
$dbname = 'dbname'; 

$connessione = mysql_connect("localhost", "dbuser", "dbpass") or die("Impossibile connettersi al server host"); 
mysql_select_db(dbname, $connessione) or die ("Impossibile selezionare il database.");

$dialogo="risposta=".$dialogo;
$Id_prodotti=$_POST["id_prodotti"];
$Nome_prodotto=$_POST['nome_prodotto'];
$Descrizione_prodotto=$_POST['descrizione_prodotto'];
$Quantita=$_POST['quantita'];
$Prezzo=$_POST['prezzo'];
$Prezzo_fisso=$_POST['prezzo_fisso'];
$Euro=$_POST['euro'];
$zeri=number_format($Prezzo, 2, ',', '.');
$cifra=$zeri;
$calcolo= number_format($Prezzo, 2, ',', '.');
$memoria=$Quantita;
$path=$_POST['immagine'];

if(isset($_SESSION['id_utenti'])){

$sql = mysql_query("SELECT * FROM iscritti WHERE id_utenti=".$_SESSION['id_utenti']); 
$iu=$_SESSION['id_utenti'];
echo"$iu";
$query= "INSERT INTO acquisti (id_utenti,nome_prodotto,prezzo,quantita,calcolo,prezzo_fisso) VALUES ('$iu','$Nome_prodotto','$Prezzo','$Quantita','$memoria','$Prezzo_fisso')";
$query2="UPDATE prodotti SET nome_prodotto='$Nome_prodotto',descrizione_prodotto='$Descrizione_prodotto',prezzo='$Prezzo',immagine='$path',costo='$Euro',quantita='$Quantita' WHERE nome_prodotto= '$Nome_prodotto'";
$risposta='..'; 
echo "risposta=".$risposta;

if (mysql_query($query,$connessione)){
$risposta=''; 
echo "risposta=".$risposta; 
}else{
$risposta='...'; 
echo "risposta=".$risposta; 
}

}


mysql_close($connessione);

?>
 
da quello che vedo non stai facendo due query su due diversi db ma su due diverse tabelle; comunque:

  • definisci l'INSERT e lo passi a mysql_query()
  • fatto questo esegui l'update passandolo a mysql_query()
 
Ciao Eliox, grazie mille per la risposta intendi così?

PHP:
<?PHP 
session_start(); 
header('Cache-Control: no-cache'); 
header('Pragma: no-cache'); 
$dbhost = 'localhost'; 
$dbuser = 'dbuser'; 
$dbpass = 'dbpass'; 
$dbname = 'dbname'; 

$connessione = mysql_connect("localhost", "dbuser", "dbpass") or die("Impossibile connettersi al server host"); 
mysql_select_db(dbname, $connessione) or die ("Impossibile selezionare il database."); 

$dialogo="risposta=".$dialogo; 
$Id_prodotti=$_POST["id_prodotti"]; 
$Nome_prodotto=$_POST['nome_prodotto']; 
$Descrizione_prodotto=$_POST['descrizione_prodotto']; 
$Quantita=$_POST['quantita']; 
$Prezzo=$_POST['prezzo']; 
$Prezzo_fisso=$_POST['prezzo_fisso']; 
$Euro=$_POST['euro']; 
$zeri=number_format($Prezzo, 2, ',', '.'); 
$cifra=$zeri; 
$calcolo= number_format($Prezzo, 2, ',', '.'); 
$memoria=$Quantita; 
$path=$_POST['immagine']; 

if(isset($_SESSION['id_utenti'])){ 

$sql = mysql_query("SELECT * FROM iscritti WHERE id_utenti=".$_SESSION['id_utenti']); 
$iu=$_SESSION['id_utenti']; 
echo"$iu"; 
$query= "INSERT INTO acquisti (id_utenti,nome_prodotto,prezzo,quantita,calcolo,prezzo_fisso) VALUES ('$iu','$Nome_prodotto','$Prezzo','$Quantita','$memoria','$Prezzo_fisso')"; 
$query2=mysql_query("UPDATE prodotti SET nome_prodotto='$Nome_prodotto',descrizione_prodotto='$Descrizione_prodotto',prezzo='$Prezzo',immagine='$path',costo='$Euro',quantita='$Quantita' WHERE nome_prodotto= '$Nome_prodotto')"; 
$risposta='..'; 
echo "risposta=".$risposta; 

if (mysql_query($query,$query2,$connessione)){ 
$risposta=''; 
echo "risposta=".$risposta; 
}else{ 
$risposta='...'; 
echo "risposta=".$risposta; 
} 

} 


mysql_close($connessione); 

?>
 
Risparmia codice:
PHP:
$risposta='...';
$query= mysql_query("INSERT INTO acquisti (id_utenti,nome_prodotto,prezzo,quantita,calcolo,prezzo_fisso) VALUES ('$iu','$Nome_prodotto','$Prezzo','$Quantita','$memoria','$Prezzo_fisso')") or die("risposta=".$risposta);
 
$query2=mysql_query("UPDATE prodotti SET nome_prodotto='$Nome_prodotto',descrizione_prodotto='$Descrizione_prodotto',prezzo='$Prezzo',immagine='$path',costo='$Euro',quantita='$Quantita' WHERE nome_prodotto= '$Nome_prodotto')") or die("risposta=".$risposta);  

mysql_close($connessione);
 

Discussioni simili