Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - James_JPM

#1
El error es básicamente que aunque ejecute ese código, no inserta los datos en la base de datos.

Tengo dos archivos, un html con el mism formulario, lo único que cambia es el botón por un "submit" para enviar la información, y una vez que pulsas a enviar te lleva al que compartí en el primer post, y en ese tengo el html y php juntos
#2
Buenas a todos!

Pues mi problema es el comentado en el título. Desde un formulario en php estoy intentando que los datos que recoja los inserte en una bbdd, y no consigo encontrar el fallo.

Este es el código HTML:

<doctype HTML>
<html>
<head>
<meta charset='utf-8'>
<title>Nuevo documento</title>
<!--<link rel="stylesheet" type="text/css" href="estilos.css"> -->
<style>

body{

margin: 0 auto;
}

table{

padding-top: 10px;
padding-bottom: 20px;
}


h1{

margin-top: 100px;
margin-left: 600px;
font-family: "Tahoma", "Geneva", sans-serif;
font-size: 30px;
text-decoration: underline;
}

th{

font-family: "Tahoma", "Geneva", sans-serif;
font-size: 15px;
}

td{

font-family: "Tahoma", "Geneva", sans-serif;
font-size: 15px;
}

table{

margin: 0 auto;
}

#contenedor1{

margin: 0 auto;
width: 1200px;
height: 105px;
background-color: #F5F6CE;
border: 2px solid black;
}

.caja_text{

font-family: "Tahoma", "Geneva", sans-serif;
font-size: 15px;
}

.anho{

font-family: "Tahoma", "Geneva", sans-serif;
font-size: 15px;
width: 100%;
}

#enviar{

margin-top: 50px;
margin-left: 580px;
font-family: "Tahoma", "Geneva", sans-serif;
font-size: 15px;
background-color: #FFF;
border: 1px solid #000;
}

#atras{

margin-top: 50px;
margin-left: 640px;
font-family: "Tahoma", "Geneva", sans-serif;
font-size: 15px;
background-color: #FFF;
border: 1px solid #000;
}
</style>
</head>
<body style='background-color: #E6E6E6;'>
<h1>CICLOS</h1>
<form name='formulario' id='formulario' method='post' action=''>
<div id='contenedor1'>
<table>
<tr>
<th>Nome:</th>
<td><label for='textfield'></label>
<input type='text' name='nombre' id='nombre' class='caja_text' placeholder='Ex: Xoan' maxlength='15'></td>
<th>Apelido 1:</th>
<td><label for='textfield'></label>
<input type='text' name='apellido1' id='apellido1' class='caja_text' placeholder='Ex: Rodríguez' maxlength='15'></td>
<th>Apelido 2:</th>
<td><label for='textfield'></label>
<input type='text' name='apellido2' id='apellido2' class='caja_text' placeholder='Ex: Pérez' maxlength='15'></td>
<th>Ano Inicio:</th>
<td><label for='textfield'></label>
<input type='text' name='anho_in' id='anho_in' class='anho' min='' max='' placeholder='Ex: 2014'></td>
</tr>
<tr>
<th>Ciclo:</th>
<td>
<select name='nom_ciclo' id='nom_ciclo'>
<option>Desarrollo de Apps Web</option>
<option>Desarrollo de Apps Multiplataforma</option>
<option>Admin. de Sistemas Informáticos</option>
</select>
</td>
<th>Curso:</th>
<td><label for='textfield'></label>
<input type='radio' name='curso' id='curso' class='caja_text' value='1'>1º
<input type='radio' name='curso' id='curso' class='caja_text' value='2'>2º</td>
<th>Grupo:</th>
<td>
<select name='grupo' id='grupo'>
<option>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
</select>
</td>
</tr>
</table>
</div>
<input type='submit' id='atras' name='atras' value='Atrás' onclick='history.back()'/>
</form>
</body>



Y este el código PHP:

<?php

session_start();

$db_conexion="localhost";
$db_usuario="root";
$db_pass="";
$db_nombre="ciclos";

$conexion=mysqli_connect($db_conexion$db_usuario$db_pass$db_nombre);

if(!$conexion) {

die("Erro de conexión: " mysqli_connect_error());
}

if(isset($_POST["enviar"])) {

$nombre=$_POST["nombre"];
$apel1=$_POST["apellido1"];
$apel2=$_POST["apellido2"];
$anho=$_POST["anho_in"];
$ciclo=$_POST["nom_ciclo"];
$curso=$_POST["curso"];
$grupo=$_POST["grupo"];

if($nombre=="" || $apel1=="" || $apel2=="" || $anho=="" || $ciclo=="" || $curso=="" || $grupo=="") { 

echo("<script type='text/javascript'>alert('Erro.')</script>");

}else{

$query=mysqli_query($conexion"INSERT INTO usuarios (nombre, apellido1, apellido2, anho_inicio, nom_ciclo, curso, grupo) VALUES ($nombre$apel1$apel2$anho$ciclo$curso$grupo)");

mysqli_query($query);
}
}

?>

</html>


Gracias de antemano!  :laugh:
#3
Buenas a todos, el problema que tengo es el siguiente.

Quiero validar con javascript un formulario, y entre estas validaciones incluyo radio buttoms. El problema es que yo quiero que se valide todo en una misma función, y una vez que todas las condiciones estén correctas, que se lance un alert diciendo que el formulario fue enviado con éxito.

Fui capaz de hacerlo con dos funciones; una para los radios y otra para el resto y sí me funciona, pero no funciona como yo quiero, ya que me avisa de que faltan por marcar los radios y después ejecuta el alert diciendo que el formulario fue enviado con éxito. Y esto no tendría mucho sentido...

Os dejo aquí abajo el código para ver si me podéis echar una mano :)




<doctype HTML>
<html>
<head>
<meta charset='utf-8'>
<title>Tarefa UD02</title>
<link rel="stylesheet" type="text/css" href="estilos.css">
</head>
<body style='background-color: #E6E6E6;'>
<h1>DATOS PERSONAIS</h1>
<h2>DATOS ACADÉMICOS</h2>
<form name='formulario' id='formulario' method='post' action='' onSubmit='return validar(this)'>
<div id='contenedor1'>
<table>
<tr>
<th>Nome:</th>
<td><label for='textfield'></label>
<input type='text' name='nombre' id='nombre' class='caja_text' placeholder='Ex: Xoan'></td>
<th>Apelidos:</th>
<td><label for='textfield'></label>
<input type='text' name='apellidos' id='apellidos' class='caja_text' placeholder='Ex: Rodríguez Pérez'></td>
<th>NIF:</th>
<td><label for='textfield'></label>
<input type='text' name='nif' id='nif' class='caja_text' maxlength='9' pattern='(([X-Z]{1})([-]?)(\d{7})([-]?)([A-Z]{1}))|((\d{8})([-]?)([A-Z]{1}))' placeholder='Ex: 66589734X'></td>
</tr>
<tr>
<th>Data Nac:</th>
<td><label for='textfield'></label>
<input type='date' name='fecha_nac' id='fecha_nac' class='fecha' min='1970-01-01' max='2000-12-31' value='1995-06-17'></td>
<th>Ender. postal:</th>
<td><label for='textfield'></label>
<input type='text' name='direccion' id='direccion' class='caja_text' placeholder='Ex: Pardiñas 5, Santiago de Compostela'></td>
<th>Localidade:</th>
<td>
<select name='localidad' id='localidad'>
<option>Caldas de Reis</option>
<option>Padrón</option>
<option>Valga</option>
<option>Bemil</option>
<option>Cesures</option>
<option>Moraña</option>
<option>Cuntis</option>
<option></option>
</select>
</td>
</tr>
<tr>
<th>Concello:</th>
<td>
<select name='concello' id='concello'>
<option>Santiago de Compostela</option>
<option>Padrón</option>
<option>Valga</option>
<option>Bemil</option>
<option>Cesures</option>
<option>Moraña</option>
<option>Cuntis</option>
<option></option>
</select>
</td>
<th>CodPostal:</th>
<td><label for='textfield'></label>
<input type='text' name='cod_post' id='cod_post' class='caja_text' maxlength='5' placeholder='Ex: 15004'></td>
<th>Provincia:</th>
<td>
<select name='provincia' id='provincia'>
<option>A Coruña</option>
<option>Lugo</option>
<option>Ourense</option>
<option>Pontevedra</option>
</select>
</td>
</tr>
<tr>
<th>Teléfono fixo:</th>
<td><label for='textfield'></label>
<input type='tel' name='tlf_fij' id='tlf_fijo' class='caja_text' maxlength='9' pattern='[0-9]{9}' placeholder='Ex: 986546281'></td>
<th>Teléfono móbil:</th>
<td><label for='textfield'></label>
<input type='tel' name='tlf_mov' id='tlf_mov' class='caja_text' maxlength='9' pattern='[0-9]{9}' placeholder='Ex: 629432021'></td>
<th>E-mail:</th>
<td><label for='textfield'></label>
<input type='email' name='email' id='email' class='caja_text' placeholder='Ex: exemplo@gmail.com'></td>
</tr>
</table>
</div>
<div id='contenedor2'>
<table>
<tr>
<th>Acceso ó ciclo</th>
<th>Ano de inicio do ciclo</th>
<th>Grupo</th>
<th>Repetidor/a</th>
</tr>
<tr>
<td><input type='radio' name='check_acceso' id='check_acceso' class='caja_text'>Bacharelato</td>
<td><label for='textfield'></label>
<input type='date' class='fecha' name='fecha_in' id='fecha_in' min='2000-01-01' max='2016-12-31' value='2014-10-06'></td>
<td><input type='radio' name='rad_grup' id='rad_grup' class='caja_text'>1º</td>
<td><input type='radio' name='rad_rep' id='rad_rep' class='caja_text'>Si</td>
</tr>
<tr>
<td><input type='radio' name='check_acceso' id='check_acceso' class='caja_text'>Proba de acceso</td>
<td></td>
<td><input type='radio' name='rad_grup' id='rad_grup' class='caja_text'>2º</td>
<td><input type='radio' name='rad_rep' id='rad_rep' class='caja_text'>Non</td>
</tr>
<tr>
<td><input type='radio' name='check_acceso' id='check_acceso' class='caja_text'>Ciclos</td>
</tr>
<tr>
<td><input type='radio' name='check_acceso' id='check_acceso' class='caja_text'>Outros</td>
</tr>
</table>
</div>
<input type='submit' id='enviar' name='enviar' value='Enviar este formulario' onclick='validacion(this)'/>
</form>
</body>
<script type="text/javascript">

function validacion(frm){

var confirmar=confirm("Está seguro de que desexa enviar o formulario? (Asegúrese de que os campos están cubertos correctamente).");

if(confirmar==false){

alert("Cancelado o envío do formulario.");

}else{

var nombre=document.getElementById('nombre').value;
var apellidos=document.getElementById('apellidos').value;
var nif=document.getElementById('nif').value;

var fecha_nac=document.getElementById('fecha_nac').value;
var direccion=document.getElementById('direccion').value;
var localidad=document.getElementById('localidad').value;

var concello=document.getElementById('concello').value;
var cod_post=document.getElementById('cod_post').value;
var provincia=document.getElementById('provincia').value;

var tlf_fijo=document.getElementById('tlf_fijo').value;
var tlf_mov=document.getElementById('tlf_mov').value;
var email=document.getElementById('email').value;

var check_acceso=document.getElementById('check_acceso').value;
var fecha_in=document.getElementById('fecha_in').value;
var rad_grup=document.getElementById('rad_grup').value;
var rad_rep=document.getElementById('rad_rep').value;


if(nombre=="" || apellidos=="" || nif=="" || direccion=="" || cod_post=="" || tlf_fijo=="" || tlf_mov=="" || email==""){

alert("[ERRO] Asegúrese de que tódolos campos están cubertos.");
              return false;
}else if(!isNaN(nombre)){

alert("[ERRO] Introduza un nome válido.");
              return false;
}else if(!isNaN(apellidos)){

alert("[ERRO] Introduza uns apelidos válidos.");
              return false;
}else if(isNaN(cod_post)){

alert("[ERRO] Introduza un código postal válido.");
              return false;
}else if(!frm.rad_grup[0].checked && !frm.rad_grup[1].checked){

              alert('Seleccione unha opción en "Grupo".');
              return false;
          }else if(!frm.rad_rep[0].checked && !frm.rad_rep[1].checked){

            alert('Seleccione unha opción en "Repetidor".');
              return false;
          }else if(!frm.check_acceso[0].checked && !frm.check_acceso[1].checked && !frm.check_acceso[2].checked && !frm.check_acceso[3].checked){

            alert('Seleccione unha opción en "Acceso ó ciclo".');
            return false;
}else{

alert("Formulario enviado con éxito.");
}
}
}
</script>
</html>
#4
EDITO: Ya está solucionado. El fallo era el padding dentro del td.

Buenas a todos.

Pues el problema que tengo es el que comento en el título. Quiero centrar el contenido de las celdas de mi página HTML, pero cuando intento aplicar propiedades en la parte CSS como "text-align: center;" no me funciona, mientras que propiedades como la de cambiar el tipo de letra o aumentar su tamaño sí.

Aquí el código HTML y CSS, de momento aún no hice la parte lógica de la página porque me quedé estancado con esto. Que seguramente sea una tontería, pero bueno, que yo no la encuentro.  :xD

<doctype HTML>
<html>
<head>
<meta charset='utf-8'>
<title>Tarefa UD02</title>
<style>

body{

margin: 0 auto;
}

table{

padding-top: 10px;
padding-bottom: 20px;
}


h1{

margin-left: 500px;
font-family: "Tahoma", "Geneva", sans-serif;
font-size: 30px;
text-decoration: underline;
}

h2{

margin-top: 150px;
margin-left: 500px;
font-family: "Tahoma", "Geneva", sans-serif;
font-size: 30px;
text-decoration: underline;
position: absolute;
}

th{

font-family: "Tahoma", "Geneva", sans-serif;
font-size: 15px;
}

#contenedor2 th{

text-decoration: underline;
}

tr{

background-color: red;
}

td{

font-family: "Tahoma", "Geneva", sans-serif;
1font-weight: bold;
font-size: 15px;
padding-left: 50px;
}

table{

margin: 0 auto;
}

#contenedor1{

margin: 0 auto;
width: 1200px;
height: 130px;
background-color: #F5F6CE;
border: 2px solid black;
}

#contenedor2{

margin: 0 auto;
margin-top: 70px;
width: 1200px;
height: 180px;
background-color: #F5F6CE;
border: 2px solid black;

}

#contenedor2 tr{

background-color: red;
}

#caja_text{

font-family: "Tahoma", "Geneva", sans-serif;
font-size: 15px;
text-align: left;
}

</style>
</head>
<h1>DATOS PERSONAIS</h1>
<h2>DATOS ACADÉMICOS</h2>
<body>
<form name='' method='' action='' id=''>
<div id='contenedor1'>
<table>
<tr>
<th>Nome:</td>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
<th>Apelidos:</td>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
<th>NIF:</td>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
</tr>
<tr>
<th>Data Nac:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
<th>Ender. postal:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
<th>Localidade:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
</tr>
<tr>
<th>Concello:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
<th>CodPostal:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
<th>Provincia:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
</tr>
<tr>
<th>Teléfono fixo:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
<th>Teléfono móbil:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
<th>E-mail:</th>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text'></td>
</tr>
</table>
</div>
<div id='contenedor2'>
<table>
<tr>
<th><span>Acceso ó ciclo</span></th>
<th><span>Ano de inicio do ciclo</span></th>
<th><span>Grupo</span></th>
<th><span>Repetidor/a</span></th>
</tr>
<tr>
<td><input type='radio' name='check' id='caja_text'>Bacharelato</td>
<td><label for='textfield'></label>
<input type='text' name='' id='caja_text2'></td>
<td><input type='radio' name='rad_grup' id='caja_text'>&nbsp;&nbsp;1º</td>
<td><input type='radio' name='rad_rep' id='caja_text'>&nbsp;&nbsp;Si</td>
</tr>
<tr>
<td><input type='radio' name='check' id='caja_text'>Proba de acceso</td>
<td></td>
<td><input type='radio' name='rad_grup' id='caja_text'>&nbsp;&nbsp;2º</td>
<td><input type='radio' name='rad_rep' id='caja_text'>&nbsp;&nbsp;Non</td>
</tr>
<tr>
<td><input type='radio' name='check' id='caja_text'>Ciclos</td>
</tr>
<tr>
<td><input type='radio' name='check' id='caja_text'>Outros</td>
</tr>
</table>
</div>
</form>
</body>
</html>


Gracias de antemano. :)
#5
Desarrollo Web / Re: Problema no-object.
9 Junio 2016, 19:29 PM
No, el problema de loguearse ya está resuelto. Si el usuario está almacenado en la BBDD lo redirecciona a la página que quiero yo. :)

Ahora el problema es que tengo otro documento llamado "formulario_registro.php" en el que una vez que se cubran los campos correspondientes, se almacene los datos introducidos en la BBDD pero no lo hace, ni salta ningún error.

El código es el siguiente: <doctype HTML>
<html lang='es'>
<head>
<meta charset='utf-8'>
<title></title>
</head>
<body>

<form action='' method='POST' class='registro' action=''>
<div>
<label>Nombre:</label>
<input type='text' name='nombre'></div><br />
<label>Apellido:</label>
<input type='text' name='apellido'></div><br /><br />
<label>Correo-e:</label>
<input type='email' name='email'></div><br /><br />
<label>Repetir Correo-e:</label>
<input type='email' name='reemail'></div><br /><br />
<label>Usuario:</label>
<input type='text' name='usuario'></div><br /><br />
<div><label>Contraseña:</label>
<input type='password' name='password'></div> <br /><br />
<div><label>Repetir Contraseña:</label>
<input type='password' name='repassword'></div> <br /><br />
<div>
<input type='submit' name='enviar' value='Registrar'></div>
</form>

<?php 

//session_start();
//require_once("registro.php");
session_start();

require_once "conexion_bd.php";

if(isset($_POST["enviar"])) {

    
if($_POST["nombre"]=="" or $_POST["apellido"]=='' or $_POST["email"]=='' or $_POST["reemail"]=='' or $_POST["usuario"]=='' or $_POST["password"]=='' or $_POST["repassword"]=='') { 

       
echo("<script type='text/javascript'>alert('Error. Asegúrese de haber cubierto todos los campos.')</script>");

    
}else { 

        
$query="SELECT * FROM usuarios"
        
$resultados=$conexion->query($query);

        
$verificar_user=0;

        
/*while($result=$resultados->fetch_object($resultados)) {

             if($result->usuario==$_POST["usuario"]) { 

                 $verificar_usuario=1;
        //echo("<script type='text/javascript'>alert('Nombre de usuario ya en uso. Por favor, introduzca otro nombre válido.')</script>");
            
         }**/
  
        
if($verificar_user==0) {

            
if($_POST["password"]==$_POST["repassword"]) { 

                
$nombre=$_POST["nombre"]; 
                
$apellido=$_POST["apellido"];
                
$email=$_POST["email"]; 
                
$usuario=$_POST["usuario"]; 
                
$password=$_POST["password"];  

                
$query2="INSERT INTO usuario (codigo, nombre, apellido, email, usuario, password) VALUES ('', $nombre$apellido$email$usuario$password)";

                
$conexion->query($query2); 
  
                
echo("Usted se ha registrado correctamente.");
header("location:index.html");                

            
}else {

                
echo("Las claves no son iguales, intente nuevamente."); 
            
}

        
}else { 

            
echo("Este usuario ya ha sido registrado anteriormente."); 
        

    
}
}
?>

</body>
</html>


PD: El código no está terminado, tengo que correguir los echos por scripts y cosas así. Pero lo principal que quiero que haga, no funciona.
#6
Desarrollo Web / Re: Problema no-object.
9 Junio 2016, 02:16 AM
Vale, solucionado ya.

Resulta que buscando por el foro encontré a un usuario con un problema similiar diciendo que el error estaba en la BBDD que le aparecía como creada pero en realidad no existía. La borré, la volví a crear y el problema se solucionó.

Muchas gracias igualmente por la ayuda. ;)
#7
Desarrollo Web / Problema no-object.
8 Junio 2016, 21:54 PM
Antes de nada, pido perdón por si este no es la sección donde debería ir la duda.

Al caso; después de mucho buscar, no consigo encontrar el motivo por el que me salta este error:
( ! ) Notice: Trying to get property of non-object in
en la línea if($resultados->num_rows>0) {

El código es el siguiente:

- Primero tengo un index.html (No pongo código porque es irrelevante).
- Después un archivo php llamado "conexión_bd.php": <?php

$conexion=new mysqli();

$db_conexion="localhost";
$db_usuario="root";
$db_pass="";
$db_nombre="usuarios";

$conexion->connect($db_conexion$db_usuario$db_pass$db_nombre);

if($conexion->connect_error) {

die("Se ha detectado un problema en la conexión: " $conexion->connect_error);
}
?>


- Otro archivo php llamado "login_validation.php": <?php

session_start();
require_once("conexion_bd.php");

$usuario=$_POST["usuario"];
$password=$_POST["pass"];

$sentenciaSQL="SELECT * FROM usuario WHERE usuario='$usuario' AND contraseña='$password' ";

$resultados=$conexion->query($sentenciaSQL);

if($resultados->num_rows>0) {

while($registros=$resultados->fetch_array()) {

$nombre=$registros["nombre"];

$_SESSION["nombreUsuario"]=$nombre;
header("location:inicio.php");
}

}else {

echo("Usuario o contraseña incorrectos. Por favor, inténtelo de nuevo.");
}

?>


-Otro archivo php llamado "inicio.php" (En este también tengo código html): <?php

session_start();
//error_reporting(0);

$varSesion=$_SESSION["nombreUsuario"];
        echo(
"Bienvenido, <strong>" $_SESSION["nombreUsuario"] . "</strong>");

if($varSesion==null || $varSesion=="") {


echo("Error 404, por favor, hable con su administrador.");
die();
}
?>


- Y finalmente otro archivo php llamado "CerrarSesion.php" donde se cierra la sesión.


Gracias de antemano. :)