本文整理汇总了PHP中mysqli_fetch_fields函数的典型用法代码示例。如果您正苦于以下问题:PHP mysqli_fetch_fields函数的具体用法?PHP mysqli_fetch_fields怎么用?PHP mysqli_fetch_fields使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了mysqli_fetch_fields函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: cast_query_results
public static function cast_query_results($rs)
{
$fields = mysqli_fetch_fields($rs);
$data = array();
$types = array();
foreach ($fields as $field) {
switch ($field->type) {
case 1:
$types[$field->name] = 'boolean';
break;
case 3:
$types[$field->name] = 'int';
break;
case 4:
$types[$field->name] = 'float';
break;
default:
$types[$field->name] = 'string';
break;
}
}
while ($row = mysqli_fetch_assoc($rs)) {
$data[] = $row;
}
for ($i = 0; $i < count($data); $i++) {
foreach ($types as $name => $type) {
settype($data[$i][$name], $type);
}
}
return $data;
}
开发者ID:StockersSRL,项目名称:Lucas,代码行数:31,代码来源:clases+-+Copy.php
示例2: fetch_next
function fetch_next($class = null)
{
$fetch = $this->fetch_type;
$result = $this->result;
switch ($fetch) {
case MySqliResult::$FETCH_OBJECT:
if ($class != null) {
$row = $result->fetch_object($class, null);
} else {
$row = $result->fetch_object();
}
//mysqli_fetch_object($result);
break;
case MySqliResult::$FETCH_ARRAY:
$row = mysqli_fetch_array($result);
break;
case MySqliResult::$FETCH_FIELDS:
$row = mysqli_fetch_fields($result);
break;
case MySqliResult::$FETCH_LENGTHS:
$row = mysqli_fetch_fields($result);
break;
case MySqliResult::$FETCH_ROW:
$row = mysqli_fetch_row($result);
break;
case MySqliResult::$FETCH_ASSOC:
$row = mysqli_fetch_assoc($result);
break;
}
return $row;
}
开发者ID:htmlgraphic,项目名称:HTMLgraphic-MVC,代码行数:31,代码来源:MySqliResult.class.inc.php
示例3: mysql_query_cache
function mysql_query_cache($sql, $linkIdentifier = false, $timeout = 4)
{
$mysqli = $GLOBALS['mysqli'];
//首先调用上面的getCache函数,如果返回值不为false的话,就说明是从memcached服务器获取的数据
//如果返回false,此时就需要直接从数据库中获取数据了。
//需要注意的是这里使用操作的命令加上sql语句的md5码作为一个特定的key,可能大家觉得使用数据项的
//名称作为key会比较自然一点。运行memcached加上"-vv"参数,并且不作为daemon运行的话,可以看见
//memcached处理时输出的相关信息
if (!($cache = getCache(md5("mysql_query" . $sql)))) {
$cache = false;
$r = mysqli_query($mysqli, $sql);
$fields = mysqli_fetch_fields($r);
//读取数据库,并将结果放入$cache数组中
for ($i = 0; $row = mysqli_fetch_array($r); $i++) {
$j = 0;
foreach ($fields as $val) {
$cache[$i][$val->name] = $row[$j];
$j++;
}
}
//将数据放入memcached服务器中,如果memcached服务器没有开的话,此语句什么也不会做
//如果开启了服务器的话,数据将会被缓存到memcached服务器中
if (!setCache(md5("mysql_query" . $sql), $cache, $timeout)) {
# If we get here, there isn’t a memcache daemon running or responding
echo "apt-get install memcached";
}
}
return $cache;
}
开发者ID:RX78NY1,项目名称:hustoj,代码行数:29,代码来源:memcache.php
示例4: display_data_in_table
public function display_data_in_table($sql)
{
$this->last_query = $sql;
$result = mysqli_query($this->db, $sql);
if (mysqli_num_rows($result) > 0) {
$finfo = mysqli_fetch_fields($result);
echo "<table class='table'>";
echo "<tr>";
foreach ($finfo as $val) {
echo "<td>";
$self = $_SERVER['PHP_SELF'];
echo "<b>" . $val->name . "<b></a>";
echo "</td>";
}
echo "<td><b>custom</b></td>";
echo "</tr>";
while ($row = mysqli_fetch_array($result)) {
echo "<tr>";
for ($x = 0; $x < count($finfo); $x++) {
echo "<td>";
echo $row[$x];
echo "</td>";
}
echo "<td><a href='#'><button>custom</button></a></td>";
echo "</tr>";
}
// end of while
echo "</table>";
// echo "<input type='submit' value='delete'>";
echo "</form>";
} else {
echo "0 results";
}
}
开发者ID:KenProchnow,项目名称:ExpenseApp,代码行数:34,代码来源:database.php
示例5: fetch
/**
* 获取结果集
**/
public function fetch($rs, $fetchMode = self::DB_FETCH_DEFAULT)
{
$fields = mysqli_fetch_fields($rs);
$values = mysqli_fetch_array($rs, $fetchMode);
if ($values) {
foreach ($fields as $field) {
switch ($field->type) {
case MYSQLI_TYPE_TINY:
case MYSQLI_TYPE_SHORT:
case MYSQLI_TYPE_INT24:
case MYSQLI_TYPE_LONG:
if ($field->type == MYSQLI_TYPE_TINY && $field->length == 1) {
$values[$field->name] = (bool) $values[$field->name];
} else {
$values[$field->name] = (int) $values[$field->name];
}
break;
case MYSQLI_TYPE_DECLIMAL:
case MYSQLI_TYPE_FLOAT:
case MYSQLI_TYPE_DOUBLE:
case MYSQLI_TYPE_LONGLONG:
$values[$field->name] = (double) $values[$field->name];
break;
}
}
}
return $values;
}
开发者ID:hsiun,项目名称:laputa,代码行数:31,代码来源:MysqliDb.php
示例6: field_data
/**
* Field data
*
* Generates an array of objects containing field meta-data
*
* @access public
* @return array
*/
function field_data()
{
$retval = array();
$field_data = mysqli_fetch_fields($this->result_id);
for ($i = 0, $c = count($field_data); $i < $c; $i++) {
$retval[$i] = new stdClass();
$retval[$i]->name = $field_data[$i]->name;
$retval[$i]->type = $field_data[$i]->type;
$retval[$i]->max_length = $field_data[$i]->max_length;
$retval[$i]->primary_key = (int) ($field_data[$i]->flags & 2);
$retval[$i]->default = '';
}
/** Fixed from github commit. See https://github.com/EllisLab/CodeIgniter/commit/effd0133b3fa805e21ec934196e8e7d75608ba00
while ($field = mysqli_fetch_object($this->result_id))
{
preg_match('/([a-zA-Z]+)(\(\d+\))?/', $field->Type, $matches);
$type = (array_key_exists(1, $matches)) ? $matches[1] : NULL;
$length = (array_key_exists(2, $matches)) ? preg_replace('/[^\d]/', '', $matches[2]) : NULL;
$F = new stdClass();
$F->name = $field->Field;
$F->type = $type;
$F->default = $field->Default;
$F->max_length = $length;
$F->primary_key = ( $field->Key == 'PRI' ? 1 : 0 );
$retval[] = $F;
}
**/
return $retval;
}
开发者ID:jaksmid,项目名称:website,代码行数:40,代码来源:mysqli_result.php
示例7: old_mysql_result
/**
* Fonction basée sur l'api mysqli et
* simulant la fonction mysql_result()
* Copyright 2014 Marc Leygnac
*
* @param type $result résultat après requête
* @param integer $row numéro de la ligne
* @param string/integer $field indice ou nom du champ
* @return type valeur du champ ou false si erreur
*/
function old_mysql_result($result, $row, $field = 0)
{
if ($result === false) {
return false;
}
if ($row >= mysqli_num_rows($result)) {
return false;
}
if (is_string($field) && !(strpos($field, ".") === false)) {
// si $field est de la forme table.field ou alias.field
// on convertit $field en indice numérique
$t_field = explode(".", $field);
$field = -1;
$t_fields = mysqli_fetch_fields($result);
for ($id = 0; $id < mysqli_num_fields($result); $id++) {
if ($t_fields[$id]->table == $t_field[0] && $t_fields[$id]->name == $t_field[1]) {
$field = $id;
break;
}
}
if ($field == -1) {
return false;
}
}
mysqli_data_seek($result, $row);
$line = mysqli_fetch_array($result);
return isset($line[$field]) ? $line[$field] : false;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:38,代码来源:old_mysql_result.php
示例8: fetch_fields
/**
* Return rows of field information in a result set. This function is a
* basically a wrapper on the native mysqli_fetch_fields function.
*
* @param bool $as_array Return each field info as array; defaults to false
*
* @return array Array of field information each as an associative array
*/
public function fetch_fields($as_array = false)
{
if ($as_array) {
return array_map(function ($object) {
return (array) $object;
}, mysqli_fetch_fields($this->result));
} else {
return mysqli_fetch_fields($this->result);
}
}
开发者ID:nramenta,项目名称:dabble,代码行数:18,代码来源:Result.php
示例9: getResgitro
public function getResgitro($rsQuery, $iLinha)
{
$oStdClas = new stdClass();
$aResult = mysqli_fetch_row($rsQuery);
if ($aResult != null) {
$aCampos = mysqli_fetch_fields($rsQuery);
foreach ($aCampos as $iCampo => $aCampo) {
$oStdClas->{$aCampo->name} = $aResult[$iCampo];
}
}
return $oStdClas;
}
开发者ID:ricardosander,项目名称:petshop,代码行数:12,代码来源:MySQL.php
示例10: func_mysqli_fetch_array
function func_mysqli_fetch_array($mysqli, $engine, $sql_type, $sql_value, $php_value, $offset, $regexp_comparison = NULL)
{
if (!$mysqli->query("DROP TABLE IF EXISTS test")) {
printf("[%04d] [%d] %s\n", $offset, $mysqli->errno, $mysqli->error);
return false;
}
if (!$mysqli->query($sql = sprintf("CREATE TABLE test(id INT NOT NULL, label %s, PRIMARY KEY(id)) ENGINE = %s", $sql_type, $engine))) {
// don't bail, engine might not support the datatype
return false;
}
if (is_null($php_value)) {
if (!$mysqli->query($sql = sprintf("INSERT INTO test(id, label) VALUES (1, NULL)"))) {
printf("[%04d] [%d] %s\n", $offset + 1, $mysqli->errno, $mysqli->error);
return false;
}
} else {
if (is_string($sql_value)) {
if (!$mysqli->query($sql = "INSERT INTO test(id, label) VALUES (1, '" . $sql_value . "')")) {
printf("[%04ds] [%d] %s - %s\n", $offset + 1, $mysqli->errno, $mysqli->error, $sql);
return false;
}
} else {
if (!$mysqli->query($sql = sprintf("INSERT INTO test(id, label) VALUES (1, '%d')", $sql_value))) {
printf("[%04di] [%d] %s\n", $offset + 1, $mysqli->errno, $mysqli->error);
return false;
}
}
}
if (!($res = $mysqli->query("SELECT id, label FROM test"))) {
printf("[%04d] [%d] %s\n", $offset + 2, $mysqli->errno, $mysqli->error);
return false;
}
if (!($row = $res->fetch_array(MYSQLI_BOTH))) {
printf("[%04d] [%d] %s\n", $offset + 3, $mysqli->errno, $mysqli->error);
return false;
}
$fields = mysqli_fetch_fields($res);
if (!(gettype($php_value) == "unicode" && $fields[1]->flags & 128)) {
if ($regexp_comparison) {
if (!preg_match($regexp_comparison, (string) $row['label']) || !preg_match($regexp_comparison, (string) $row[1])) {
printf("[%04d] Expecting %s/%s [reg exp = %s], got %s/%s resp. %s/%s. [%d] %s\n", $offset + 4, gettype($php_value), $php_value, $regexp_comparison, gettype($row[1]), $row[1], gettype($row['label']), $row['label'], $mysqli->errno, $mysqli->error);
return false;
}
} else {
if ($row['label'] !== $php_value || $row[1] != $php_value) {
printf("[%04d] Expecting %s/%s, got %s/%s resp. %s/%s. [%d] %s\n", $offset + 4, gettype($php_value), $php_value, gettype($row[1]), $row[1], gettype($row['label']), $row['label'], $mysqli->errno, $mysqli->error);
return false;
}
}
}
return true;
}
开发者ID:gleamingthecube,项目名称:php,代码行数:52,代码来源:ext_mysqli_tests_mysqli_fetch_array_oo.php
示例11: _performGetBlobFieldNames
protected function _performGetBlobFieldNames($result)
{
$allFields = mysqli_fetch_fields($result);
$blobFields = array();
if (!empty($allFields)) {
foreach ($allFields as $field) {
if (stripos($field["type"], "BLOB") !== false) {
$blobFields[] = $field["name"];
}
}
}
return $blobFields;
}
开发者ID:KaMaToZzz,项目名称:livestreet-framework,代码行数:13,代码来源:Mysqli.php
示例12: __construct
public function __construct($qvar)
{
//constructor takes query string as a parameter
include "/home/ubuntu/workspace/db_connect.php";
//contains $conn - Oracle connection info
$this->qvar = $qvar;
$sql = $mysqli->query($this->qvar);
$this->numcols = mysqli_num_fields($sql);
$this->colname = mysqli_fetch_fields($sql);
$this->numrows = mysqli_num_rows($sql);
while ($row = mysqli_fetch_assoc($sql)) {
$this->tableArray[] = $row;
}
$sql->close();
}
开发者ID:bushwald,项目名称:pizza,代码行数:15,代码来源:MySqlArray.php
示例13: zerofill
function zerofill($offset, $link, $datatype, $insert = 1)
{
mysqli_query($link, 'ALTER TABLE test_mysqli_stmt_bind_result_zerofill_table_1 DROP zero');
$sql = sprintf('ALTER TABLE test_mysqli_stmt_bind_result_zerofill_table_1 ADD zero %s UNSIGNED ZEROFILL', $datatype);
if (!mysqli_query($link, $sql)) {
// no worries - server might not support it
return true;
}
if (!mysqli_query($link, sprintf('UPDATE test_mysqli_stmt_bind_result_zerofill_table_1 SET zero = %s', $insert))) {
printf("[%03d] UPDATE failed, [%d] %s\n", $offset, mysqli_errno($link), mysqli_error($link));
return false;
}
if (!($stmt = mysqli_prepare($link, 'SELECT zero FROM test_mysqli_stmt_bind_result_zerofill_table_1 LIMIT 1'))) {
printf("[%03d] SELECT failed, [%d] %s\n", $offset, mysqli_errno($link), mysqli_error($link));
return false;
}
$result = null;
if (!mysqli_stmt_bind_result($stmt, $result)) {
printf("[%03d] Bind failed, [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
return false;
}
if (!mysqli_stmt_execute($stmt) || !mysqli_stmt_fetch($stmt)) {
printf("[%03d] Execute or fetch failed, [%d] %s\n", mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
return false;
}
$res = mysqli_stmt_result_metadata($stmt);
$meta = mysqli_fetch_fields($res);
mysqli_stmt_free_result($stmt);
$meta = $meta[0];
$length = $meta->length;
if ($length > strlen($insert)) {
$expected = str_repeat('0', $length - strlen($insert));
$expected .= $insert;
if ($expected !== $result) {
printf("[%03d] Expecting '%s' got '%s'\n", $offset, $expected, $result);
return false;
}
} else {
if ($length <= 1) {
printf("[%03d] Length reported is too small to run test\n", $offset);
return false;
}
}
return true;
}
开发者ID:alphaxxl,项目名称:hhvm,代码行数:45,代码来源:mysqli_stmt_bind_result_zerofill.php
示例14: attributes
protected function attributes()
{
// return an array of attribute keys and there values
global $database;
//$row_result = $database->query("select * from ". static::$table_name. " where id=1 limit 1");
$row_result = $database->query("select * from " . static::$table_name . " limit 1");
$finfo = mysqli_fetch_fields($row_result);
//echo "attributes are: ". print_r($finfo);
$attribute = array();
foreach ($finfo as $val) {
$name = $val->name;
if (property_exists($this, $name)) {
$attribute["{$name}"] = $this->{$name};
//"'$"."{$name}'";
}
}
mysqli_free_result($row_result);
return $attribute;
}
开发者ID:RichJones22,项目名称:photo_gallery,代码行数:19,代码来源:database_object.php
示例15: build_cbm_tables
function build_cbm_tables()
{
$tables = array();
$mysqli = mysqli_connect("localhost", "root", "", "cbm");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\r\n", mysqli_connect_error());
exit;
}
//查找所有的表名
$result = $mysqli->query("show tables");
//执行查询语句
while ($arr = $result->fetch_assoc()) {
$tbl = $arr["Tables_in_cbm"];
//遍历查询结果
if ($tbl == 'cbm_dummy') {
continue;
}
$tables[$tbl] = array();
}
//查找表中的所有字段
foreach (array_keys($tables) as $tbl) {
$query = "SELECT * from {$tbl}";
if ($result = mysqli_query($mysqli, $query)) {
/* Get field information for all columns */
$finfo = mysqli_fetch_fields($result);
$fields = array();
foreach ($finfo as $val) {
//类型编号映射成c++数据类型
// var_dump($tbl.'----'.h_type2txt($val->type));
$fields[$val->name] = MYSQL_type_to_cpp_type(h_type2txt($val->type));
}
$tables[$tbl] = $fields;
mysqli_free_result($result);
}
}
/* close connection */
mysqli_close($mysqli);
return $tables;
}
开发者ID:hunanhd,项目名称:cbm,代码行数:40,代码来源:index.php
示例16: consulta_tabela
function consulta_tabela()
{
$this->consulta_campos();
echo "<table border='1'>\n";
echo "<tr>\n";
foreach (mysqli_fetch_fields($this->dados) as $campo) {
echo "<td>";
echo $campo->name;
echo "</td>\n";
}
echo "</tr>\n";
while ($reg = mysqli_fetch_assoc($this->dados)) {
echo "<tr>\n";
for ($i = 0; $i < $this->campos_num; $i++) {
echo "<td>";
echo $reg[$this->campos_nome[$i]];
echo "</td>\n";
}
echo "</tr>\n";
}
echo "</table>\n";
}
开发者ID:pablovdsp,项目名称:QueroTrabalharNaZUP,代码行数:22,代码来源:class.mysql.php
示例17: nextr
public function nextr($result)
{
if ($this->mnd) {
return $result->fetch_array(MYSQL_BOTH);
}
$ref = $result->result_metadata();
if (!$ref) {
return false;
}
$tmp = mysqli_fetch_fields($ref);
if (!$tmp) {
return false;
}
$ref = [];
foreach ($tmp as $col) {
$ref[] = [$col->name, null];
}
$tmp = [];
foreach ($ref as $k => $v) {
$tmp[] =& $ref[$k][1];
}
try {
if (!call_user_func_array(array($result, 'bind_result'), $tmp)) {
return false;
}
} catch (\Exception $e) {
}
if (!$result->fetch()) {
return false;
}
$tmp = [];
$i = 0;
foreach ($ref as $k => $v) {
$tmp[$i++] = $v[1];
$tmp[$v[0]] = $v[1];
}
return $tmp;
}
开发者ID:vakata,项目名称:database,代码行数:38,代码来源:Sphinx.php
示例18: zerofill
function zerofill($offset, $link, $datatype, $insert = 1)
{
mysqli_query($link, 'ALTER TABLE test DROP zero');
$sql = sprintf('ALTER TABLE test ADD zero %s UNSIGNED ZEROFILL', $datatype);
if (!mysqli_query($link, $sql)) {
// no worries - server might not support it
return true;
}
if (!mysqli_query($link, sprintf('UPDATE test SET zero = %s', $insert))) {
printf("[%03d] UPDATE failed, [%d] %s\n", $offset, mysqli_errno($link), mysqli_error($link));
return false;
}
if (!($res = mysqli_query($link, 'SELECT zero FROM test LIMIT 1'))) {
printf("[%03d] SELECT failed, [%d] %s\n", $offset, mysqli_errno($link), mysqli_error($link));
return false;
}
$row = mysqli_fetch_assoc($res);
$meta = mysqli_fetch_fields($res);
mysqli_free_result($res);
$meta = $meta[0];
$length = $meta->length;
if ($length > strlen($insert)) {
$expected = str_repeat('0', $length - strlen($insert));
$expected .= $insert;
if ($expected !== $row['zero']) {
printf("[%03d] Expecting '%s' got '%s'\n", $offset, $expected, $row['zero']);
return false;
}
} else {
if ($length <= 1) {
printf("[%03d] Length reported is too small to run test\n", $offset);
return false;
}
}
return true;
}
开发者ID:gleamingthecube,项目名称:php,代码行数:36,代码来源:ext_mysqli_tests_mysqli_fetch_assoc_zerofill.php
示例19: fGetCamposTabla
/**
* fGetCamposTabla
* Función que devuelve un array con el nombre de los campos de tipo texto
* de la base de datos...
* Los campos de tipo texto son VARCHAR (253) y CHAR (254)
*
* @param string $tabla El nombre de la tabla
* @return array
**/
function fGetCamposTabla($tabla)
{
// PRIMERO nos conectamos a la base de datos
$conexion = Conectar();
// Construimos la cadena SQL para seleccionar
$sql = 'SELECT * FROM ' . $tabla;
// Array para almacenar los resultados de la consulta de selección...
$campos = array();
// Ejecutamos la consulta de selección
$resultado = mysqli_query($conexion, $sql);
// Obtener la información del campo para todas las columnas
$info_campo = mysqli_fetch_fields($resultado);
foreach ($info_campo as $valor) {
if ($valor->type == 253 || $valor->type == 254) {
$campos[] = $valor->name;
}
}
// Liberamos los resultados de la conexión
Liberar($resultado);
// Nos desconectamos de la base de datos
Desconectar($conexion);
// Devolvemos el resultado de la consulta
return $campos;
}
开发者ID:witigo,项目名称:Witigos-Framework,代码行数:33,代码来源:buscar.php
示例20: func_mysqli_stmt_get_result_geom
function func_mysqli_stmt_get_result_geom($link, $engine, $sql_type, $bind_value, $offset)
{
if (!mysqli_query($link, "DROP TABLE IF EXISTS test_mysqli_stmt_get_result_geom_table_1")) {
printf("[%04d] [%d] %s\n", $offset, mysqli_errno($link), mysqli_error($link));
return false;
}
if (!mysqli_query($link, sprintf("CREATE TABLE test_mysqli_stmt_get_result_geom_table_1(id INT, label %s, PRIMARY KEY(id)) ENGINE = %s", $sql_type, $engine))) {
// don't bail - column type might not be supported by the server, ignore this
return false;
}
for ($id = 1; $id < 4; $id++) {
$sql = sprintf("INSERT INTO test_mysqli_stmt_get_result_geom_table_1(id, label) VALUES (%d, %s)", $id, $bind_value);
if (!mysqli_query($link, $sql)) {
printf("[%04d] [%d] %s\n", $offset + 2 + $id, mysqli_errno($link), mysqli_error($link));
}
}
if (!($stmt = mysqli_stmt_init($link))) {
printf("[%04d] [%d] %s\n", $offset + 6, mysqli_errno($link), mysqli_error($link));
return false;
}
if (!mysqli_stmt_prepare($stmt, "SELECT id, label FROM test_mysqli_stmt_get_result_geom_table_1")) {
printf("[%04d] [%d] %s\n", $offset + 7, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
mysqli_stmt_close($stmt);
return false;
}
if (!mysqli_stmt_execute($stmt)) {
printf("[%04d] [%d] %s\n", $offset + 8, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
mysqli_stmt_close($stmt);
return false;
}
if (!($res = mysqli_stmt_get_result($stmt))) {
printf("[%04d] [%d] %s\n", $offset + 9, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt));
mysqli_stmt_close($stmt);
return false;
}
$result = mysqli_stmt_result_metadata($stmt);
$fields = mysqli_fetch_fields($result);
if ($fields[1]->type != MYSQLI_TYPE_GEOMETRY) {
printf("[%04d] [%d] %s wrong type %d\n", $offset + 10, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt), $fields[1]->type);
}
$num = 0;
while ($row = mysqli_fetch_assoc($res)) {
$bind_res =& $row['label'];
if (!($stmt2 = mysqli_stmt_init($link))) {
printf("[%04d] [%d] %s\n", $offset + 11, mysqli_errno($link), mysqli_error($link));
return false;
}
if (!mysqli_stmt_prepare($stmt2, "INSERT INTO test_mysqli_stmt_get_result_geom_table_1(id, label) VALUES (?, ?)")) {
printf("[%04d] [%d] %s\n", $offset + 12, mysqli_stmt_errno($stmt2), mysqli_stmt_error($stmt2));
return false;
}
$id = $row['id'] + 10;
if (!mysqli_stmt_bind_param($stmt2, "is", $id, $bind_res)) {
printf("[%04d] [%d] %s\n", $offset + 13, mysqli_stmt_errno($stmt2), mysqli_stmt_error($stmt2));
return false;
}
if (!mysqli_stmt_execute($stmt2)) {
printf("[%04d] [%d] %s\n", $offset + 14, mysqli_stmt_errno($stmt2), mysqli_stmt_error($stmt2));
return false;
}
mysqli_stmt_close($stmt2);
if (!($res_normal = mysqli_query($link, sprintf("SELECT id, label FROM test_mysqli_stmt_get_result_geom_table_1 WHERE id = %d", $row['id'] + 10)))) {
printf("[%04d] [%d] %s\n", $offset + 15, mysqli_errno($link), mysqli_error($link));
return false;
}
if (!($row_normal = mysqli_fetch_assoc($res_normal))) {
printf("[%04d] [%d] %s\n", $offset + 16, mysqli_errno($link), mysqli_error($link));
return false;
}
if ($row_normal['label'] != $bind_res) {
printf("[%04d] PS and non-PS return different data.\n", $offset + 17);
return false;
}
mysqli_free_result($res_normal);
$num++;
}
if ($num != 3) {
printf("[%04d] [%d] %s, expecting 3 results, got only %d results\n", $offset + 18, mysqli_stmt_errno($stmt), mysqli_stmt_error($stmt), $num);
mysqli_free_result($res);
mysqli_stmt_close($stmt);
return false;
}
mysqli_free_result($res);
mysqli_stmt_close($stmt);
return true;
}
开发者ID:badlamer,项目名称:hhvm,代码行数:86,代码来源:mysqli_stmt_get_result_geom.php
注:本文中的mysqli_fetch_fields函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论