Regularily, but not in certain tables, I don´t get the excepted result back from a query which in all other cases works perfect. My opinion is that there could be a problem with the index of the table.
Probably there could also a bug in the wrapper script which I use to access the database and sometimes tables are not closed correctly (when I use ANALYSE/REPAIR) I use the following fragment, perhaps its not the best script to access the database: <? $av_qid = db_query(" SELECT * FROM attributeValue WHERE attribute_type_id = 1 "); while ($rr = db_fetch_object($av_qid)) { ... } ?> ----------------------- script library to access db: <? if (!isset($DB_DIE_ON_FAIL)) { $DB_DIE_ON_FAIL = true; } if (!isset($DB_DEBUG)) { $DB_DEBUG = false; } function db_connect($dbhost, $dbname, $dbuser, $dbpass) { /* connect to the database $dbname on $dbhost with the user/password pair * $dbuser and $dbpass. */ global $DB_DIE_ON_FAIL, $DB_DEBUG; if (! $dbh = mysql_pconnect($dbhost, $dbuser, $dbpass)) { if ($DB_DEBUG) { echo "<h2>Can't connect to $dbhost as $dbuser</h2>"; echo "<p><b>MySQL Error</b>: ", mysql_error(); } else { echo "<h2>Database error encountered</h2>"; } if ($DB_DIE_ON_FAIL) { echo "<p>This script cannot continue, terminating."; die(); } } if (! mysql_select_db($dbname)) { if ($DB_DEBUG) { echo "<h2>Can't select database $dbname</h2>"; echo "<p><b>MySQL Error</b>: ", mysql_error(); } else { echo "<h2>Database error encountered</h2>"; } if ($DB_DIE_ON_FAIL) { echo "<p>This script cannot continue, terminating."; die(); } } return $dbh; } function db_disconnect() { /* disconnect from the database, we normally don't have to call this function * because PHP will handle it */ mysql_close(); } function db_query($query, $debug=false, $die_on_debug=true, $silent=false) { /* run the query $query against the current database. if $debug is true, then * we will just display the query on screen. if $die_on_debug is true, and * $debug is true, then we will stop the script after printing he debug message, * otherwise we will run the query. if $silent is true then we will surpress * all error messages, otherwise we will print out that a database error has * occurred */ global $DB_DIE_ON_FAIL, $DB_DEBUG; if ($debug) { echo "<pre>" . htmlspecialchars($query) . "</pre>"; if ($die_on_debug) die; } $qid = mysql_query($query); if (! $qid && ! $silent) { if ($DB_DEBUG) { echo "<h2>Can't execute query</h2>"; echo "<pre>" . htmlspecialchars($query) . "</pre>"; echo "<p><b>MySQL Error</b>: ", mysql_error(); } else { echo "<h2>Database error encountered</h2>"; } if ($DB_DIE_ON_FAIL) { echo "<p>This script cannot continue, terminating."; die(); } } return $qid; } function db_fetch_array($qid) { /* grab the next row from the query result identifier $qid, and return it * as an associative array. if there are no more results, return FALSE */ return mysql_fetch_array($qid); } function db_fetch_row($qid) { /* grab the next row from the query result identifier $qid, and return it * as an array. if there are no more results, return FALSE */ return mysql_fetch_row($qid); } function db_fetch_object($qid) { /* grab the next row from the query result identifier $qid, and return it * as an object. if there are no more results, return FALSE */ return mysql_fetch_object($qid); } function db_num_rows($qid) { /* return the number of records (rows) returned from the SELECT query with * the query result identifier $qid. */ return mysql_num_rows($qid); } function db_affected_rows() { /* return the number of rows affected by the last INSERT, UPDATE, or DELETE * query */ return mysql_affected_rows(); } function db_insert_id() { /* if you just INSERTed a new row into a table with an autonumber, call this * function to give you the ID of the new autonumber value */ return mysql_insert_id(); } function db_free_result($qid) { /* free up the resources used by the query result identifier $qid */ mysql_free_result($qid); } function db_num_fields($qid) { /* return the number of fields returned from the SELECT query with the * identifier $qid */ return mysql_num_fields($qid); } function db_field_name($qid, $fieldno) { /* return the name of the field number $fieldno returned from the SELECT query * with the identifier $qid */ return mysql_field_name($qid, $fieldno); } function db_data_seek($qid, $row) { /* move the database cursor to row $row on the SELECT query with the identifier * $qid */ if (db_num_rows($qid)) { return mysql_data_seek($qid, $row); } } ?> ----------------------------------------- Andreas Habereder Kirchenstr. 17e 81675 München private: [EMAIL PROTECTED] fax: +49 1212 5 107 37 317 mobile: +49 172 838 7771 ----------------------------------------- This message is for the designated recipient only and may contain privileged, proprietary, or otherwise private information. If you have received it in error, please notify the sender immediately and delete the original. Any other use of the email by you is prohibited. --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php