
Uso de php con mysqli
Publicado por Ernesto (5 intervenciones) el 11/12/2015 18:09:21
Hola a todos.
Saludos. Por primera vez en este foro. Tengo un problema en el que he agotado todas las posibilidades y nada, acudo a la comunidad a ver si me pueden ayudar a solventarlo. La situación es la siguiente. Tengo este código html, específicamente html5.
Adjunto nada mas la parte donde se me desencadena el error. Que es en la linea donde esta la sentencia while. Este fichero es el index.php y desde que lo llamo me da este error:
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/tutoriales/public_html/index.php on line 41
En la primera linea de este fichero tengo lo siguiente: <?php include("database.php"); ?> y a continuación les voy a mostrar el código de dicho fichero:
Trabajo sobre Ubuntu 14.04. No conozco mucho de mysqli, antes usaba mysql, pero en una reinstalación del sistema operativo y ulterior upgrade del mismo me dejó de funcionar al código. Por la versión de php he tenido que pasar a mysqli pues al ver que no ejecutaba nada tuve que ir al php.ini y modificar dos lineas realtivas a los mensajes de error y cundo me dice que están obsoletas las funciones mysql para la versión de php. espero me puedan ayudar. Muchas gracias disculpen lo extenso del mensaje.
Saludos. Por primera vez en este foro. Tengo un problema en el que he agotado todas las posibilidades y nada, acudo a la comunidad a ver si me pueden ayudar a solventarlo. La situación es la siguiente. Tengo este código html, específicamente html5.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<div id="rightpanel">
<div id="buscar">
<form action="procesa.php" method="post">
<input type="text" value="Buscar..." name="buscar" id="campo-buscar" onkeyup="loadXMLDoc()" onfocus="if (this.value == 'Buscar...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Buscar...';}" placeholder="Nombre del vídeo a buscar" />
<input type="submit" value="Ir" />
</form>
<div id="myDiv"></div>
</div>
<div id="div1">Vídeos:</div>
<div id="container">
<?php
$data = $GLOBALS["DB"]->emum();
while ($row = mysqli_fetch_array($data)){
echo "<div class='row' onclick='index.playFile($row[0])'>";
echo "<span class='rt'>$row[1]</span>";
echo "<span class='rd'>$row[2]</span>";
echo "</div>";
}?>
Adjunto nada mas la parte donde se me desencadena el error. Que es en la linea donde esta la sentencia while. Este fichero es el index.php y desde que lo llamo me da este error:
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/tutoriales/public_html/index.php on line 41
En la primera linea de este fichero tengo lo siguiente: <?php include("database.php"); ?> y a continuación les voy a mostrar el código de dicho fichero:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
define ("DATABASE_SERVER", "localhost");
define ("DATABASE_USER", "efelix");
define ("DATABASE_PASSWORD", "ef1403/*-");
define ("DATABASE_NAME", "videos");
class TDataBase {
public $ctn;
function __construct(){
$this->ctn = mysqli_connect(DATABASE_SERVER, DATABASE_USER, DATABASE_PASSWORD, DATABASE_NAME);
}
function insert($name, $desc, $filesnames){
$id = date("U");
$sql = "INSERT INTO videos VALUES ('$id', '$name', '$desc');";
mysqli_query($this->ctn, $sql);
for ($i = 0; $i < count($filesnames); $i++){
$fname = $filesnames[$i];
$sql = "INSERT INTO archivos VALUES('$id', '$fname')";
mysqli_query($this->ctn, $sql);
echo $sql;
}
return $id;
}
function emum(){
return mysqli_query($this->ctn, "SELECT * FROM videos");
}
function enum_files_of($id){
return mysqli_query($this->ctn, "SELECT * FROM archivos WHERE archivos.idvideo = '$id'");
}
}
$DB = new TDataBase();
$GLOBALS["DB"] = $DB;
?>
Trabajo sobre Ubuntu 14.04. No conozco mucho de mysqli, antes usaba mysql, pero en una reinstalación del sistema operativo y ulterior upgrade del mismo me dejó de funcionar al código. Por la versión de php he tenido que pasar a mysqli pues al ver que no ejecutaba nada tuve que ir al php.ini y modificar dos lineas realtivas a los mensajes de error y cundo me dice que están obsoletas las funciones mysql para la versión de php. espero me puedan ayudar. Muchas gracias disculpen lo extenso del mensaje.
Valora esta pregunta


0