mysql-* versus db_* statements
| From: | j dot kuehne at sign-tronic dot ch | Date: | Mon, 26 Jun 2006 09:07:17 +0000 |
| Subject: | mysql-* versus db_* statements | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-238626@lists.php.net to get a copy of this message | ||
Could someone explain the behaviour of the following code fragments. I have a serious problem with
db-statements.
##############################################################################################
##############################################################################################
> require_once "DB.php";
> require_once "knowledge.inc";
> require_once "template-new.inc";
>
>
> function setupQuery($search_eb)
> {
> // Show the wines stocked at the winestore that match
> // the search criteria
>
> $query = "SELECT *
> FROM knowledge_db
> WHERE MATCH (autor,problem) AGAINST ('$search_eb')
> OR id = ('$search_eb')
> OR autor = ('$search_eb')
> OR stichwort = ('$search_eb')
> OR date_new = ('$search_eb')
> OR anlage = ('$search_eb')";
>
> // Add region_name restriction if they've selected anything
>
> //$query .= "ORDER BY data_new";
> return ($query);
> }
>
> error_reporting(E_ALL);
>
>
> // Show the user the knowledge that match their query
> function showKnowledges($connection, &$template)
> {
>
>
> // Produce a heading for the top of the page
>
> global $dsn;
>
>
> $template->setCurrentBlock();
>
> $template->setVariable("SUCH-KRITERIUM","Such-Kriterium:
> {$_SESSION["searchFormVars"]["search_eb"]}");
>
> $browseString = "search_eb=" .
> urlencode($_SESSION["searchFormVars"]["search_eb"]);
>
> $search = ($_SESSION["searchFormVars"]["search_eb"]);
>
> $link = mysql_connect("localhost", "root", "040573");
>
> $template->parseCurrentBlock();
>
>
>
> mysql_select_db("knowledge", $link);
>
> // Encode the search parameters for embedding in links to other pages
> // $connection = DB::connect($dsn, true);
> $query = setupQuery($_SESSION["searchFormVars"]["search_eb"]);
> //$result = $connection->query($query);
> //var_dump ($query);
> $result=@mysql_query($query);
>
> ...
>
###########################################################################################################
##
##why I could not use the DB statement $result = $connection->query($query) instead of the mysql
statement $result=@mysql_query($query); Further on, the same situation appears in the code, which
##looks like:
>
>
> for ( $rowCounter = 0;
> ($rowCounter < SEARCH_ROWS) &&
> (( $rowCounter + $_SESSION["searchFormVars"]["offset"]) <
> mysql_num_rows($result)) &&
> ($row = mysql_fetch_array($result));
> //($row
> =mysql_fetch_row($_SESSION["searchFormVars"]["offset"]+$rowCounter));
> // ($row = & $result->fetchRow(DB_FETCHMODE_ASSOC,
> $_SESSION["searchFormVars"]["offset"]+$rowCounter));
> $rowCounter++)
>
#############################################################################################################
##
##
## I could not use the DB statement ($row = & $result->fetchRow(DB_FETCHMODE_ASSOC,
$_SESSION["searchFormVars"]["offset"]+$rowCounter));
## instead of the mysql code ($row = mysql_fetch_array($result)). But in that case, there is not
the same meaning between the msyql and DB statement. However, I need the DB assignation for ##
faultless work. What can I do?
>
> best reagards, Georg
>
>
--
Wbr,
Antony Dovgal