Strange Oracle Query problem


Posted on 16th Feb 2014 07:03 pm by admin

Ok So I have this PHP class that talks to a Javascript class that basically creates a table of information from a database query and puts it in a sortable, filterable table. This all works fine and dandy.

Well, i have had the need for some semi-dynamic functionality (changing the table of the query, or changing some other detail) which I accomplished using GETS. This also worked perfectly

I wanted to try to add some AJAX functionality in place of the GET functionality, so I changed things around a bit, and now I am sending an xmlhttprequest to my php page. this requests fine. however, I do not get back the information I want. Here is the PHP page that I send the request to


require('page.php');
function getAssoc($query, $table){
$svname = 'list_users';
$svuser = 'dmitriyy';
$svpass = 'dmitriyy';
$oracle = new oracle($svname, $svuser, $svpass);
//var_dump($oracle);
$query = str_replace('REPLACE_ME', $table, $query);
//var_dump($query);
//echo $query."<br />";
//echo "execute is here bitch";
echo $query;
$execute = $oracle->query$query);
while(OCIFetchInto($execute, $results, OCI_ASSOC)){
if ($data == null){
$data = array();
$data[] = $results;
}
else {
$data[] = $results;
}
}
return $data;

}

$query = $_GET['q'];
$table = $_GET['t'];

print_r(getAssoc($query, $table));
echo "done with print_r";
//echo json_encode(getAssoc($query, $table));


page.php (just a small class that does some oracle database connection and query stuff. This class DOES work, as I use it everywhere)

class oracle {
//class variables
var $connection;

/*Constructor
*Input (Server name, server usename, server password. By default
*server name is localhost, and password and user are blank
*returns true if connection was successful, false if not
*/
function oracle($svname, $svuser, $svpass){
//echo "<script type='text/javascript'>alert('".$svname."');</script>";
try {
$conn = oci_connect($svuser, $svpass, $svname);
if (!$conn){
throw new Exception("Error");
}
}
catch(Exception $e){
trigger_error($e->getMessage());
exit();
}
$this->connection = $conn;
if (!$conn){
echo "<script type='text/javascript'>alert('COULD NOT CONNECT');</script>";
return false;
}
return true;
}//end Constructor

//class functions

/*query_valid
*Input: A query String
*Returns the string if it is valid. String cannot have insert or update commands
*returns false if it does
*/
public function is_valid($string){
$temp = strtoupper($string);
$invalid_commands = array("INSERT", "DELETE", "UPDATE", "DROP", "TRUNCATE", "APPEND");
foreach($invalid_commands as $c){
if (strpos($temp, $c) !== false){
return false;
}
}
return true;
}

/*query
*Input: A (hopefully valid) oracle query
*returns the parsed query if execution was valid
*returns false if not
*/
public function query($query){
if (!$this->is_valid($query)){
die ("Query Contains Illegal Command! Exiting script");
}

$do = oci_parse($this->connection, $query);
$go = oci_execute($do);

if (!$go){
return false;
}
return $do;
}

/*BubbleSort2
*Sorts a 2d array, based on a certain column (sorts numerically)
*returns the sorted array
*/
public function BubbleSort2($sort_array,$column = 0,$reverse = true){
$lunghezza=count($sort_array);
for ($i = 0; $i < $lunghezza ; $i++){
for ($j = $i + 1; $j < $lunghezza ; $j++){
if($reverse){
if ($sort_array[$i][$column] < $sort_array[$j][$column]){
$tmp = $sort_array[$i];
$sort_array[$i] = $sort_array[$j];
$sort_array[$j] = $tmp;
}
}else{
if ($sort_array[$i][$column] > $sort_array[$j][$column]){
$tmp = $sort_array[$i];
$sort_array[$i] = $sort_array[$j];
$sort_array[$j] = $tmp;
}
}
}
}
return $sort_array;
}

}


ignore the bubblesort

On the ajax page (the first snippet) everything seems to work fine until I try to build that data array. It just returns empty. I have verified that it is the exact same query on the main page (which executes the query successfully) and the ajax page.

One thing to note. I pass the query from php to javascript, and then back to PHP again. I use json_decode when passing to javascript from PHP. However, this doesn't seem to have an effect on the query, as I checked them, and they appear to be the same. Im really at a loss for why this isn't working.

is what i'm trying to do possible? I think it is but im not sure any more... anyone have any insight

No comments posted yet

Your Answer:

Login to answer
186 Like 53 Dislike
Previous forums Next forums
Other forums

FAGL_FC_TRANSLATION FAS52 New GL ECC 6.0
Hello,

The new program for Translating GL Balances (FAS 52) gives the option to use diffe

PHP Code reffering to database, doing something wrong.. pls help
Well i am quite new with PHP
and for school we have to make a PHP script which reffers to a Data

Xacute search within SQL results
I have a query that is pulling data, and I want to return a specific value from the results of that

returning data from an ssh2_exec()
here's what i got.


$conn = ssh2_connect($this->_host);
ssh2_auth_password($c

how do I show what a user have selected from a checkbox?
From my code below, how would i show which check boxes have been checked and which radio buttons sel

How to load mysql (and other) extensions into PHP
How to load mysql (and other) extensions into PHP PHP Development forum discussing coding practices,

Parse error: syntax error, unexpected $end in
hello,
i receive the error :Parse error: syntax error, unexpected $end in C:xamppxampphtdocsh

Problem in back link
I have page where i have given javascript back link but when i click on it browser give a message

Need understanding of this bit of code
Code: <?php
// WHERE clause filters
$arrSQLFilters = array();

//

Images outside webroot
Im hopeing someone can help me with this because i cant figure it out.I have setup an ASP.NET websit

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash