Notice: Undefined index
Publicado por Angel (12 intervenciones) el 19/09/2020 14:10:15
Estoy realizando un proyecto con php, js, ajax y mysql. Al realizar la peticion ajax desde js recivo este error en el archivo modelo-contacos.php
Notice: Undefined index: telefono in C:\xampp\htdocs\Nueva carpeta\modelo-contactos.php on line 5
Notice: Undefined index: empresa in C:\xampp\htdocs\Nueva carpeta\modelo-contactos.php on line 6
Notice: Undefined index: nombre in C:\xampp\htdocs\Nueva carpeta\modelo-contactos.php on line 7
{"respuesta":"correcto","datos":{"nombre":"","empresa":"","telefono":""}}
modelo-contactos.php
validarformulario.js
index.php
Notice: Undefined index: telefono in C:\xampp\htdocs\Nueva carpeta\modelo-contactos.php on line 5
Notice: Undefined index: empresa in C:\xampp\htdocs\Nueva carpeta\modelo-contactos.php on line 6
Notice: Undefined index: nombre in C:\xampp\htdocs\Nueva carpeta\modelo-contactos.php on line 7
{"respuesta":"correcto","datos":{"nombre":"","empresa":"","telefono":""}}
modelo-contactos.php
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
<?php
require_once("conexionbd.php");
$nombre = filter_var($_POST['telefono'], FILTER_SANITIZE_STRING);
$empresa = filter_var($_POST['empresa'], FILTER_SANITIZE_STRING);
$telefono = filter_var($_POST['nombre'], FILTER_SANITIZE_STRING);
echo("$nombre $empresa $telefono");
try {
$statement = $conexion->prepare("INSERT INTO contactos(usuario, empresa, telefono) VALUES (?, ?, ?)");
$statement -> bind_param("sss", $nombre, $empresa, $telefono);
$statement -> execute();
$respuesta = array(
'respuesta' => 'correcto',
'datos' => array(
'nombre' => $nombre,
'empresa' => $empresa,
'telefono' => $telefono
)
);
$statement->close();
$conexion->close();
} catch (Exception $e) {
$respuesta = array(
'respuesta' => "Operacion fallida" + $e->getMessage()
);
}
echo json_encode($respuesta);
validarformulario.js
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
42
43
44
45
46
47
const form = document.getElementById('añadircontactos').addEventListener("submit", leerformulario);
function leerformulario(evt) {
const nombre = document.getElementById('nombre').value;
const empresa = document.getElementById('empresa').value;
const telefono = document.getElementById('telefono').value;
var infocontacto = new FormData();
infocontacto.append('nombre', nombre);
infocontacto.append('empresa', empresa);
infocontacto.append('telefono', telefono);
if (nombre == "" || empresa == "" || telefono == "") {
console.log('Todos los campos son obligatorios')
} else {
insertardb(infocontacto);
}
evt.preventDefault();
}
function insertardb(datos) {
let xhr = new XMLHttpRequest();
xhr.open('POST', 'modelo-contactos.php', true);
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
let respuesta = JSON.parse(xhr.responseText);
console.log(respuesta);
var añadirtareas = document.getElementById('añadirtareas');
añadirtareas.innerHTML=`
<td class="tabla">${respuesta.datos.nombre}</td>
<td class="tabla">${respuesta.datos.empresa}</td>
<td class="tabla">${respuesta.datos.telefono}</td>`
;
}
}
xhr.send(datos);
}
index.php
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="style.css">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Agenda de contactos</title>
</head>
<body>
<div id="header">Agenda de Contactos</div>
<div id="añadircontacto">
<h3 style="text-align: center;"> Añadir un contacto </h3>
<p style="text-align: center;">Todos los campos son obligatorios</p>
<form id="añadircontactos" action="#">
<label for="nombre" class="etiquetas">Nombre:</label>
<input id="nombre" class="campos" type="text" placeholder="Nombre Contacto">
<label for="empresa" class="etiquetas">Empresa:</label>
<input id="empresa" class="campos" type="text" placeholder="Empresa Contacto">
<label for="Teléfono" class="etiquetas">Teléfono:</label>
<input id="telefono" class="campos" type="text" placeholder="Teléfono Contacto">
<button id="btnenviar">Enviar</button>
</form>
</div>
<div id="contactos">
<h3 id="contactosh3">Contactos</h3>
<input id="browser" type="text" placeholder="Buscar tareas">
<label id="numcontactos">1</label>
<table id="tablatareas">
<tr>
<td class="tabla">NOMBRE</td>
<td class="tabla">EMPRESA</td>
<td class="tabla">TELEFONO</td>
<td class="tabla">ACCION</td>
</tr>
<tr id="añadirtareas"></tr>
</table>
</div>
<script src="validarformulario.js"></script>
</body>
</html>
Valora esta pregunta


0