So I have this array of images pulling and the array's keys are just 0,1,2,3,4,5.... and whatnot...
How can I make the value in the 'id' column of that table the key, and keep 'link' as the value.
Associative Array, no?
Here is my PHP:
$myImageID = $me['imageid'];
$findImages = "SELECT link FROM images WHERE model_id ='{$me['id']}'";
$imageResult = mysql_query($findImages) or die (mysql_error());
$myImages = array();
while($row = mysql_fetch_array($imageResult)) {
$myImages[] = $row[0];
}
Here is what I have:
{
[0] -> "http://website.com/link.jpg"
[1] -> "http://website.com/li123nk.jpg"
[2] -> "http://website.com/link3123.jpg"
}
Here is what I want:
{
[47] -> "http://website.com/link.jpg"
[122] -> "http://website.com/li123nk.jpg"
[4339] -> "http://website.com/link3123.jpg"
}
The PHP array_keys () function accepts an array and returns all the keys or a subset of the keys of the array. $array is the input array. $search_value specifies the value of the keys to search for. $strict if it sets to true, the array_keys () function uses the identical operator (===) for matching the search_value with the array keys.
The PHP array_keys () function accepts an array and returns all the keys or a subset of the keys of the array. $array is the input array. $search_value specifies the value of the keys to search for.
Just select the id and make it the key to the array. It's that simple. FYI, you shouldn't use mysql_* functions in new code.
PHP offers us a special type of array called an Associative Array that allows us to create an array with Key-Value pairs. The syntax for creating an Associative Array is as follows: The comma after the last Key-Value pair is optional. The Key can be of either integer or string type.
Just select the id and make it the key to the array. It's that simple.
$findImages = "SELECT id, link FROM images WHERE model_id ='{$me['id']}'";
$imageResult = mysql_query($findImages) or die (mysql_error());
$myImages = array();
while($row = mysql_fetch_array($imageResult)) {
$myImages[$row[0]] = $row[1];
}
FYI, you shouldn't use mysql_*
functions in new code. They are no longer maintained and are officially deprecated. See the red box? Learn about prepared statements instead, and use PDO, or MySQLi - this article will help you decide which. If you choose PDO, here is a good tutorial.
You also wide open to SQL injections
$myImages[$me['id']] = $row[0];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With