Ver Mensaje Individual
  #3 (permalink)  
Antiguo 29/09/2014, 09:07
alex_rcx
 
Fecha de Ingreso: septiembre-2014
Mensajes: 2
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Elegir desde formulario tabla en la que insertar datos php

Bien el programa se dividide en tres partes. Con el primero subo la imagén al servidor por medio de un formulario y guardo la ruta, en una tabla de la base de datos:


<section id="principal">
<form id="formulario" action="php/subir.php" method="POST" enctype="multipart/form-data">
<div class="campos">
<label > Nick </label>
<input type="text" name="nombre" required/>
</div>

<div class="campos">
<label> Mail </label>
<input type="email" name="apellido" required/>
</div>

<div class="campos">
<label> Edad </label>
<input type="number" min="15" max="70" name="apellido" required/>
</div>
<div class="campos">
<label> Seleccionar una tabla </label>
<select name=clase[]>
<option value="imagenes">imagenes</option>
<option value="modelos">modelos</option>
<option value="strippers">strippers</option>
<option value="actrices">actrices</option>
<option value="azafatas">azafatas</option>
<option value="bailarines">bailarines</option>
</select>
</div>
<div class="campos">
<label for="imagen">Imagen:</label>
<input type="file" name="hugo" id="imagen" />
<input type="submit" name="subir" value="Subir"/>
</div>
</form>

</section>


El problema llega en este punto al no saber con mis pocos "conocimientos" realizar el siguiene paso. Es decir recoger los datos del formulario, e insertarlos en la tabla determinada y elegida desde el select:

<?php
class myDBC{

public $mysqli=null;

public function __construct(){

include_once 'dbconfig.php';
$this->mysqli = new mysqli(DB_SERVER, DB_USER, DB_PASS, DB_NAME);

if ($this->mysqli->connect_errno){
echo "Error MySQLi: ("&nbsp. $this->mysqli->connect_errno.") " . $this->mysqli->connect_error;
exit();
}
$this->mysqli->set_charset("utf8");
}

public function __destruct(){
$this->CloseDB();
}

public function runQuery($qry){
$result = $this->mysqli->query($qry);
return $result;
}

public function CloseDB(){
$this->mysqli->close();
}

public function clearText($text){
$text = trim($text);
return $this->mysqli->real_escape_string($text);
}

public function subirTodo($nombre, $mail, $ruta, $clase ){
$clase=$_POST["clase"]; // ----------> Aquí debe estar el error al no recoger bién los datos enviados por el formulario y no saber declarar la setencia insert to..


$q = "INSERT INTO $clase (nombre, email, ruta) VALUES ('$nombre', '$mail', '$ruta')";
$result = $this->mysqli->query($q);

if($result){ //Si resultado es true, se agregó correctamente
echo'<script type="text/javascript">
alert("Agregado Exitosamente a la BD");
window.location="http://localhost/subirArchivos/index.php"
</script>';
}
else{ //Si hubo error al insertar, se avisa
echo'<script type="text/javascript">
alert("Chispas... Algo anda mal");
window.location="http://localhost/subirArchivos/index.php"
</script>';
}

}

public function seleccionar_images(){
$q = "select ruta, nombre from imagenes";

$result = $this->mysqli->query($q);

//Array asociativo que contendrá los datos
$valores = array();

//Si no hay resultados
//Se avisa al usuario y se redirige al index de la aplicación
if( $result->num_rows == 0)
{
echo'<script type="text/javascript">
alert("Ningun registro");
</script>';
return false;
}
//En otro caso, se recibe la información y se
//se regresa un array con los datos de la consulta
else{
while($row = mysqli_fetch_assoc($result)){
//Se agrega cada valor en el array
array_push($valores, $row);
}
}
//Regresa array asociativo
return $valores;
}
}
?>


Y este es el problema es decir que no sé como recoger desde el formulario el dato del campo select y concatenarlo en la INSERT TO (y aquí vendría el nombre de la tabla elegida desde la página del formulario ); De todas formas muchas gracias por ayudarme y leer este enrevesado código. En serio, muchas gracias por contestar.