Jump to content

winco7

New Members
  • Posts

    4
  • Joined

  • Last visited

Posts posted by winco7

  1. Why do you unset those two row elements? They are not a bother to you.

     

    As for the element creation you didn't follow my instructions. You LITERALLY s/b using $ArrayY[], not $ArraY[$two]. Your method is populating the element with index of whatever $two contains, not a new element for each book id.

     

    And what is this use of those meaningless $one,$two,$three vars? What are they? And why is $three an array itself?

    got it working now:

        while ($row = mysql_fetch_array($db_result)) {  
           
           $userID = $row['user_id'];  #users
     
           $bookID = $row['title']; #bookTitle
     
           $rating = $row['rating'];  
     
           $ArraY[$userID][$bookID] = $rating;
        }

     

    thanks for your help

  2. Actually you want to put the info into "different array elements", not different arrays. In your example code originally you were creating a new array each pass thru your loop. You should have used $ArrayY[] instead of just $ArrayY.

    Thank you very much. that really helped unto a certain point. I've been able to achieve this: 

     

    Array ( [11] => Array ( [123715] => 5 [140329] => 5 [3083854] => 4 [871236761] => 1 [451179757] => 1 [451403886] => 3 ) [24] => Array ( [123715] => 5 [140329] => 5 [3083854] => 4 [871236761] => 1 [451179757] => 1 [451403886] => 3 [044661095X] => 4 [014010268X] => 1 [812576063] => 5 [038076654X] => 1 ) [12] => Array ( [123715] => 5 [140329] => 5 [3083854] => 4 [871236761] => 1 [451179757] => 1 [451403886] => 3 [044661095X] => 4 [014010268X] => 1 [812576063] => 5 [038076654X] => 1 [4428] => 5 [435477] => 5 [4489] => 2 [843945249] => 5 [743524772] => 1 ) [30] => Array ( [123715] => 5 [140329] => 5 [3083854] => 4 [871236761] => 1 [451179757] => 1 [451403886] => 3 [044661095X] => 4 [014010268X] => 1 [812576063] => 5 [038076654X] => 1 [4428] => 5 [435477] => 5 [4489] => 2 [843945249] => 5 [743524772] => 1 [078601556X] => 1 [1418413933] => 3 [786930616] => 5 [553159232] => 1 [8441406243] => 5 ) )

     

    whereby for each user it shows a number of books and their rating, however at the moment those books are repeated and increase n times. instead of have each user's books and ratings separate from others.

    this is how i'm doing it:

     $one=array();

        while ($row = mysql_fetch_array($db_result)) {  
           
           $two = $row['user_id'];  
     
           $one = $row['bookId']; 
     
           $three[$one] = $row['rating'];  
           unset($row['bookId']);
           unset($row['user_id']);
        
     
           $ArraY[$two] = $three;
         
     
          }
    print_r($ArraY);
     
     
    thanks for your continued assistance 
  3.  

    This might work:
    $new_array = array();
    while ($row = mysql_fetch_array($db_result)) {
          //grab the name column from the array
          $name = $row['name_column'];
     
          //unset the name column from the original array
          unset($row['name_column'];
     
          //create a new key using the name column and set the value to the $row
          $new_array[$name] = $row; 
    }
    print_r($new_array);

     

    thank you so much getting there gradually.

    what I am aiming at really is : 

    for each user, get the book, rating and put in different arrays like this:

     

    Array (

    [phil] => Array (
    [my girl] => 2.5
    [the god delusion] => 3.5
    [tweak] => 3
    [the shack] => 4
    [the birds in my life] => 2.5
    [new moon] => 3.5
    )
    [sameer] => Array (
    [the last lecture] => 2.5
    [the god delusion] => 3.5
    [the noble wilds] => 3
    [the shack] => 3.5
    [the birds in my life] => 2.5
    [new moon] => 1
    )
    [john] => Array (
    [a thousand splendid suns] => 5
    [the secret] => 3.5
    [tweak] => 1

    )

    )

     

    Thanks

  4. I's trying to transform data from mysql into 

    something like $books below but it doenst seem to be working 

     

        $books =  array(  

                  

        "phil" => array("my girl" => 2.5, "the god delusion" => 3.5,

                        "tweak" => 3, "the shack" => 4,

                        "the birds in my life" => 2.5,

                        "new moon" => 3.5)

        )

     

    this is how I tried doing:

     

            $sql = "SELECT * from rating  where user_id=11 limit 5";

            $db_result = mysql_db_query($dbname,$sql) or trigger_error(mysql_error());

            $num_rows = mysql_num_rows($db_result) or trigger_error(mysql_error());

     

        while ($row = mysql_fetch_array($db_result)) {  

           $one = $row['bookId']; 

           $two = $row['user_id'];

           $three = $row['rating'];

     

          $ArraY= array(

             $two => array($one=>$three)

           );

          print_r($ArraY);

          }

     

     

    but this is what i get :

     

       

     

             Array (

                [11] => Array (

            [123715] => 5

            )

            ) Array (

            [11] => Array (

            [140329] => 5

            )

            ) Array (

            [11] => Array (

            [3083854] => 4

            )

            ) Array (

            [11] => Array (

            [871236761] => 1

            )

            ) Array (

            [11] => Array (

            [451179757] => 1

            )

            ) Array (

            [11] => Array (

            [451403886] => 3

            )

            ) Array (

            [24] => Array (

            [044661095X] => 4

            )

            ) Array (

            [24] => Array (

            [014010268X] => 1

            )

            ) Array (

            [24] => Array (

            [812576063] => 5

            )

            ) Array (

            [24] => Array (

            [038076654X] => 1

            )

            )

        

        instead of something like:

        

            Array (

        

            [phil] => Array (

            [my girl] => 2.5

            [the god delusion] => 3.5

            [tweak] => 3

            [the shack] => 4

            [the birds in my life] => 2.5

            [new moon] => 3.5

            )

            [sameer] => Array (

            [the last lecture] => 2.5

            [the god delusion] => 3.5

            [the noble wilds] => 3

            [the shack] => 3.5

            [the birds in my life] => 2.5

            [new moon] => 1

            )

            [john] => Array (

            [a thousand splendid suns] => 5

            [the secret] => 3.5

            [tweak] => 1

            )

            [peter] => Array (

            [chaos] => 5

           
     => 3.5
            )

            [jill] => Array (

            [the last lecture] => 1.5

            [the secret] => 2.5

            [the noble wilds] => 4

            [the host: a novel] => 3.5

            [the world without end] => 2.5

            [new moon] => 3.5

            )

            [bruce] => Array (

            [the last lecture] => 3

            [the hollow] => 1.5

            [the noble wilds] => 3

            [the shack] => 3.5

            [the appeal] => 2

            [new moon] => 3

            )

            [tom] => Array (

            [chaos] => 2.5

            )

            )

     

     

     

     

    Any help with how i can transform that will be much appreciated 

    THANKS 

     

     

     

     

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.