Jump to content

Recommended Posts

Hi

 

I'm using wordpress 3.4.2

 

Is there a way to insert images into a certain table through wordpress with out using the media library and is there a way to select images and put them on a page.

 

for example I have a table named flowers and a table named herbs and I want to be able to put all the flowers on the flowers page and all the herbs on the herbs page.

 

I know that in wordpress you can use

<?php $result = $wpdb->get_results( $wpdb->prepare(
 "SELECT * FROM flowers ORDER BY name",
 $pattern) );
?>

 

to call all the flowers but I don't know where I would put it.

Link to comment
https://forums.phpfreaks.com/topic/270984-wordpress-and-database/
Share on other sites

I'm assuming you mean that you are storing the "paths" to the image files in the database. Your images are stored in your file structure and you want to utilize the database to store and recall the path to those images? If that is the case, the $result will get EVERYTHING from that table. You may want to replace the "*" with the field holding the flower or herb name unless you are trying to really pull all of the data from the table.

 

I would then check your array after you run the above and

var_dump($result);

to see what is coming out of $result. I assume WP is returning the actual data that was queried, but it's good to be sure. After you var_dump() the data, you should be able to see how to access each element and how each is referenced.

 

Then, it's time to run through a loop like this (this next example assumes that your array has elements [0][1]...[n] and isn't multi-dimensional:

 

$output = '
<table>';

//setup foreach loop where $k is the key of each array element of $result and $v is the value it contains (the herb or flower name). This table will ONLY output the name of the flower or herb...no other data. This assumes that your first array element is $result[0] as mentioned above.
foreach($result as $k => $v){
$output.='
 <tr>
	 <td>'.$v.'</td>
 </tr>';
}

$output .='</table>';

echo $output;

 

Let me know if you have questions.

 

Thanks,

Ryan

Edited by rjmcintyre7

I have managed to select my data with a loop and now the only problem I have is that my image doesn't want to work.

I only get a little box with a torn edge.

 

This is my code

<?php global $wpdb;
$flowers = $wpdb->get_results("SELECT * FROM flowers;");
?>

<table>
<?php foreach($flowers as $flower): ?>
<td><?php echo $flower->title ?><br />
<img src="<?php echo $flower->filename; ?>" /><br />
<?php echo $flower->content ?><br />

<?php endforeach; ?>
</td>
</table>

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • 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.