It seems like such a simple question, and I apologize for my Drupal ignorance, but I am unable to get our Drupal contractors to accomplish what seems to be a simple request. I need the below script to work without paying for a month of contracting work:
The user will be logged in, and of course, there is a valid database. If it matters, the site is hosted by "Pantheon", and the script will also call a custom Drupal function to return a recordset.
Is this code not possible? Am I asking something that cannot be done ind Drupal thus the endless stream of complicated files that they keep giving me?
root\myscript\index.php
(to run as www.mysite.com\myscript\index.php)
<?php
/* Check for Drupal Instance and then bootstrap to get User and Database connection */
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
global $db_url;
$creds = parse_url($db_url);
$db_host = isset($creds['host']) ? $creds['host'] : null ;
$db_user = isset($creds['user']) ? $creds['user'] : null ;
$db_pass = isset($creds['pass']) ? $creds['pass'] : null ;
$db_name = isset($creds['db_name']) ? $creds['db_name'] : null ;
$db = mysqli_connect ($db_host, $db_user, $db_pass, $db_name);
if(!$db){
die('Failed! Could not open a db connection'.mysqli_connect_errno() . mysqli_connect_error());
}elseif(!$user){
echo 'Failed! Connected to database, but did not get $user - we canNOT proceed';
echo '<pre>'.print_r($db,true).'</pre>';
die('Connected to database, but did not get $user') ;
}else{
echo "Success! User and DB are set and ready to use - we can proceed";
echo '<pre>'.print_r($user,true).'</pre>';
echo '<pre>'.print_r($db,true).'</pre>';
}
This (I think) is at least the start of the Drupal function that will return a recordset when the main code above is working.
/**
* Implements hook_block_info().
*
*/
function xyz_listofmyitems_block_info() {
$blocks['xyz_listofmyitems'] = array(
// The name that will appear in the block list.
'info' => t('List of available items'),
// Default setting.
'cache' => DRUPAL_CACHE_PER_ROLE,
);
return $blocks;
}