FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Problem with mysqli_stmt_bind_param()
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: Problem with mysqli_stmt_bind_param() [message #179578 is a reply to message #179572] Fri, 09 November 2012 17:51 Go to previous messageGo to previous message
rayven is currently offline  rayven
Messages: 3
Registered: November 2012
Karma:
Junior Member
> On 11/8/2012 4:38 PM, rayven wrote:
>> Can anyone help as I am at my wits end.
>> On my PHP page, the following code works perefectly:
>>
>> <?php
>> $connection = new mysqli("localhost", "...", "...", "...");
>> $sql="SELECT field1, field2 FROM mytable";
>> if($stmt = mysqli_prepare($connection, $sql))
>> {
>> mysqli_stmt_bind_param($stmt, "s", $emailaddress);
>> mysqli_stmt_execute($stmt);
>> mysqli_stmt_bind_result($stmt, $clientid, $siteadmin);
>> mysqli_stmt_fetch($stmt);
>> echo($clientid);
>> echo($siteadmin);
>> mysqli_stmt_close($stmt);
>> }
>> mysqli_close($connection);
>> ?>
>>
>> But the moment I introduce mysqli_stmt_bind_param() and a parameter on the SELECT statement, I get rows_affected = -1 and no error returned, and no data is returned either. But if I run the same statement with the same parameters (and I have checked the parameter variables are populated correctly) in the mysql administrator, it works!
>>
>> <?php
>> $connection = new mysqli("localhost", "...", "...", "...");
>> $sql="SELECT field1, field2 FROM mytable WHERE field3=?";
>> if($stmt = mysqli_prepare($connection, $sql))
>> {
>> mysqli_stmt_bind_param($stmt, "s", $myparam);
>> mysqli_stmt_execute($stmt);
>> mysqli_stmt_bind_result($stmt, $clientid, $siteadmin);
>> mysqli_stmt_fetch($stmt);
>> echo($clientid);
>> echo($siteadmin);
>> mysqli_stmt_close($stmt);
>> }
>> mysqli_close($connection);
>> ?>
>>
>> What on earth am I doing wrong?
>>
>> Thanks in advance.
>> Any responses posted here, or emailed to me directly will be very much appreciated.
>>
>>

> What's in $myparam> echo it with delimiters around it (to ensure there
i>s no extra white space) just before binding it.
>
> Does msqli_stmt_bind_param() return TRUE?
> Do any of the rows in your table contain the value in $myparam?
>
> You need to do a bit of debugging here.
>
> --
> ==================
> Remove the "x" from my email address
> Jerry Stuckle
> JDS Computer Training Corp.
> jstucklex(at)attglobal(dot)net
> ==================

Way ahead of you I'm afraid.
I have already echoed the parameter out to check the contents, made sure there are no leading or trailing spaces, checked the case or the parameter and checked teh database.

I have even hard coded a $param='value'; into the page to make sure i knew it was correct, and like I said, I can search for the same data using mySQL Administrator and the record returns.

What is worse, mysqli_stmt_bind_param() returns FALSE indicating an error, but when I ask for the error, nothing is being returned.
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Analista Programador PHP
Next Topic: Using += assignment recursively on an array w/o notice
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Wed Nov 27 07:32:43 GMT 2024

Total time taken to generate the page: 0.04284 seconds