Skip to Content.
Sympa Menu

freetds - Re: [freetds] Sybase error

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: Daniel Fazekas <fdsubs AT axelero.hu>
  • To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
  • Subject: Re: [freetds] Sybase error
  • Date: Fri, 23 Apr 2004 02:43:59 +0200


On Apr 23, 2004, at 0:03, rconner AT commspeed.net wrote:

thanks for the replys but I did find the issue. It seems that teh SELECT
statement was getting messed up when it was pulling some information that
had html in it. someone entered into the db by accident. so i have that
all cleared up.

You shouldn't just leave it as such. Even if it's considered bogus data, a SELECT statement and FreeTDS ought not choke on retrieving any kind of data from columns. Especially not plain old html, which, for storage purposes, is nothing more than plain text.

I do have a question though. I cant seem to put the
output into tables with out it giving a parse error. Any suggestions?

$ms_con = mssql_connect("$myServer", "$myUser", "$myPass") or
die("mssql_connect(): Can't connect to server.\n");

$res = mssql_query("SELECT * FROM tablename", $ms_con) or
die("mssql_query(): Query Failed.\n");

while ($arr = mssql_fetch_row($res)) {
print $arr["0"];
print $arr["1"];
print $arr["2"];
print $arr["3"];
print $arr["4"];
print $arr["5"];
print $arr["6"];
print $arr["7"];
}
?>

This is syntactically valid php code - well, short of the starting <?php tag you omitted for the message - which I can't see causing any PHP parsing errors.

What I also can't see is how this is going to output data into tables.
This is just dumping the first eight columns of your table concatenated without any separator, without any post-processing (eg. escaping or trimming control characters).
All those print statements are functionally equivalent in this case to a line of:
echo implode('', array_slice($arr, 0, 8));

If this very simple code is already causing PHP parsing errors, I can only imagine a stray binary character or extra quotation mark which got lost when you transferred it to the email. You could then just copy it back to from your message to a new file. :)

If it's a html or javascript parsing error, we would need more information but, it would be totally unrelated to FreeTDS anyway.

For example, you should be using htmlspecialchars() or htmlentities() (depending on the character encoding you use for your pages) before outputting the data into a html page. If your PHP code outputs data to be inside JavaScript strings, you'd have to use addslashes(), and so on.

--
fds





Archive powered by MHonArc 2.6.24.

Top of Page