querying 2 databases in php

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • runway27
    Banned
    New Member
    • Sep 2007
    • 54

    querying 2 databases in php

    i am building a registration page where a user register for a username. i am able to insert this into mysql. the situation is every time data is inserted into example table1 in mysql in database1 for example at the same time i would like to extract the username, password and email from table1 based on the last inserted row and insert these values into another table ex table2 in a different database called database2.

    the issue i am having is with the select query as it is not returning values from table1 for me to insert those values into

    table2 in database2.

    NOTE = the hostname, user name, password are the same for both the tables and databases and are physically in 1 server machine itself.

    presently my code is
    Code:
    $conn = mysql_connect($hostname, $user, $dbpassword);
    
    if(!$conn)
    { 
    
    }
    else
    {
    mysql_select_db($database, $conn);
    $insertqueryresult = mysql_query($insertqueryfortable1);       
    $lastid = mysql_insert_id();
    
    $selectqueryoftable1 = "Select username, password, email from table1 where slno = '$lastid'";
    slno is an autoincrement and primary key which is like a serial number
    
    $selectunempsq = mysql_query($selectqueryoftable1);
    
    while($rowunemps = mysql_fetch_assoc($selectunempsq))
    {
    $unis = $rowunemps['username'];
    $psis = $rowunemps['password'];
    $emis = $rowunemps['email'];
    }
    
    $insertqueryfortable2 = "Insert into table2(username, password, email) VALUES ('$unis', '$psis', '$emis')";
    
    $unpsemresult = mysql_query($insertqueryfortable2);
    the values in the 3 variables $unis, $psis, $emis are blank.

    i have tried
    a) while($rowunemp s = mysql_fetch_arr ay($selectunemp sq))
    b) creating the table2 in database1 itself to see if it works
    but both these methods is not working

    data is being inserted into table1 but i am not able to read the values stored in table1 and then insert into table2. i have used echoing the values of the 3 variables $unis, $psis, $emis however the values are blank. with the insertquery for table2 everytime the insert query is executed a new row is created but there are no values for the 3 fileds username, password, email in table2

    initially i had $conn = mysql_connect($ hostname, $user, $dbpassword); 2 times as the tables were in different database now i have only 1 mysql_connect

    please advice how to fix this ideally both tables sitting in different databases.

    thanks.
    Last edited by ronverdonk; Mar 11 '08, 01:35 PM. Reason: last time: enclosing code within code tags
  • ronverdonk
    Recognized Expert Specialist
    • Jul 2006
    • 4259

    #2
    This is the last warning after several (incl PMs) previous: As a full member now, you should know that we expect your code to be posted in [CODE] tags (See How to Ask a Question).

    This makes it easier for our Experts to read and understand it. Failing to do so creates extra work for the moderators, thus wasting resources, otherwise available to answer the members' questions.

    Please use the tags in future.

    MODERATOR.

    Comment

    • ronverdonk
      Recognized Expert Specialist
      • Jul 2006
      • 4259

      #3
      You should test the status of each MySQL function after executing it by checking the false or true result. A statement should be something like:[php]$selectunempsq = mysql_query($se lectqueryoftabl e1)
      or die("SELECT error: ".mysql_error() );[/php]That is the only way to see if the error you presumed is really that and not the result of the execution of an invalid SQL statement.

      Ronald

      Comment

      Working...