Hacer un formulario que guarde los datos en una base de datos [PHPMyAdmin]

Iniciado por Drakaris, 13 Diciembre 2016, 19:07 PM

0 Miembros y 1 Visitante están viendo este tema.

Drakaris

Hola hice este codigo con un tutorial:
<!-- index.php -->
<?php
include_once('conexión.php')
$conexión = new Conexion();
  function 
guardarDatos(){
  
if(isset($_POST['data'])){
    
$data=$_POST['data'];

    
$materia=$_POST['materia'];

    
$tarea=$_POST['tarea'];

      if(
$data!='' and $materia!=''){
    
 mysql_query("INSERT INTO Deberes(data, materia, tarea) VALUES ('$data', '$materia', '$tarea')")
    
 if(mysql_errno()){
    
  echo 'Los datos introducidos no son valios';
    
  }else{
    
   echo 'Los datos introducidos han sido guardados';
    
  }
        }else{
        
if($data=='') echo 'Debe de especificar la data';
        
if($materia=='') echo 'Debe de especificar la materia';
        }

    }
  }

  function 
mostrarDatos(){
  
echo '<table class=""1eso a">';
  
echo '<thead>
       <tr>
           <td>Data</td>
           <td>Materia</td>
           <td>Tarea</td>
       </tr>'
;
  
echo '</thead>';
  
echo '</tbody>';
  
while($row=mysql_fetch_assoc($result)){
  
echo '<tr>';

  
foreach ($row as  $value){
  
echo '<td>';

  
echo '</td>';
  
}

  
echo '<tr>';
  
}

  
echo '</tbody>';
  
echo '</table>';

  }
?>

<!DOCTYPE html>
<script type="text/javascript">
function mensaje(){
alert("solo acepta números, puedes escribir hasta 10 caracteres");
}
</script>
<script type="text/javascript">
function solonumeros(e){
key=e.keyCode || e.which;

teclado=String.fromCharCode(key);

numeros="0123456789";

especiales="8-37-38-46-92-32-47";//array

caracteres_especiales="160-47-46-59-58";

teclado_especial=false;

for(var i in especiales){

if(key==especiales[i]){

teclado_especial=true;
}
}

if(numeros.indexOf(teclado)==-1 && !teclado_especial){
return false;
}
}
</script>
     <head>
     <title>Materia</title>
</head>

<body>
<center><font color="#333333" face="Segoe script" size="+6">Materia</font></center>
<br>
<br>
<center>
<form action="" method="post" name="datos">
<font size="+1" color="#333333" face="Segoe script">Data:</font>&nbsp;<input type="text" name="data" onKeyPress="return solonumeros(event)" onpaste="return false" maxlength="10" style="background-color: lightblue; color: gray; border: inset; border-color: orange" value="-/-/-" id="data">&nbsp&nbsp<input type="button" onclick="mensaje()" style=" cursor:help; background-color:lightgreen; border-bottom-color:#66FF00;" value="i">
<br>
<br>
<font size="+1" face="Segoe script">Materia:</font>&nbsp;<input type="text" name="materia" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="materia">
<br>
<br>
<font size="+1" face="Segoe script">Tarea:</font>
<br>
<br>
<textarea cols="50" rows="10" name="tarea" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="tarea"></textarea>
<br>
<br>
<input type="submit" value="Enviar" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;">&nbsp;<input type="reset" value="Limpiar formulario" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;" name="ok" id="ok">
</form>
<p><?php guardarDatos(); ?></p>
<?php mostrarDatos(); ?>
</center>
</body>
</html>

hay otro codigo:
<?php
 
/**
 * 
 */
 
class Conexion
 
{
 
var $enlase;
 
function __construct()
 
{
 
$this->enlace mysql_connect('localhost''root''iescalvia');
 
mysql_select_db('1eso a');
 
echo 'Conectado';
 
}

 
function __destruct(){
 
mysql_close($this->enlace);
 
echo 'desconectado';
 
}
 }

Lo hice paso a paso quiero ver si esta bien. Me podrían ayudar?
Lo quiero para publicarlo en un servidor hecho en 260mb.net.

Lo he publicado pero me pone esto.

La página ies-calvia.260mb.net no funciona

La página ies-calvia.260mb.net no puede procesar esta solicitud ahora.
HTTP ERROR 500

También es por la posición de la página?

Esta en:

htdocs<index.php<formulario.php y conexión.php
Lo increible, no es lo que ves, sino como es

[u]nsigned

Los errores HTTP 500 un 99.99% de las veces son porque tenes mal configurado tu .htaccess o directamente no tenes el mod_rewrite de apache habilitado.

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

Drakaris

Es decir que me lo que me esta diciendo es poblema del servidor 260mb.net o de mi ordenador?
Lo increible, no es lo que ves, sino como es

[u]nsigned

Es una mala configuración del servidor. Fijate que en la raíz de tu directorio web (www, htdocs o public_html) tenes una archivo .htaccess. Podrias postear aca el contenido del mismo?

Estas intentado usar mod_rewrite de apache?

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

Drakaris

Hice la conexión a la base de datos y me fue bien. Una pregunta? Por ejemplo abró el codigo que puese:

<!DOCTYPE html>
<?php
$servername 
"sql201.260mb.net";
$username "n260m_19293384";
$password "iescalvia";

// Create connection
$conn = new mysqli($servername$username$password);

// Check connection
if ($conn->connect_error) {
    die(
"Conecxion fallida: " $conn->connect_error);

echo 
"Conectado";
?>

<script type="text/javascript">
function mensaje(){
alert("solo acepta números, puedes escribir hasta 10 caracteres");
}
</script>
<script type="text/javascript">
function solonumeros(e){
key=e.keyCode || e.which;

teclado=String.fromCharCode(key);

numeros="0123456789";

especiales="8-37-38-46-92-32-47";//array

caracteres_especiales="160-47-46-59-58";

teclado_especial=false;

for(var i in especiales){

if(key==especiales[i]){

teclado_especial=true;
}
}

if(numeros.indexOf(teclado)==-1 && !teclado_especial){
return false;
}
}
</script>
     <head>
     <title>Materia</title>
</head>

<body>
<center><font color="#333333" face="Segoe script" size="+6">Insertar deberes</font></center>
<br>
<br>
<center>
<form action="" method="post">
<font size="+1" color="#333333" face="Segoe script">Data:</font>&nbsp;<input type="text" name="data" onKeyPress="return solonumeros(event)" onpaste="return false" maxlength="10" style="background-color: lightblue; color: gray; border: inset; border-color: orange" value="-/-/-" id="data">&nbsp&nbsp<input type="button" onclick="mensaje()" style=" cursor:help; background-color:lightgreen; border-bottom-color:#66FF00;" value="i">
<br>
<br>
<font size="+1" face="Segoe script">Materia:</font>&nbsp;<input type="text" name="materia" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="materia">
<br>
<br>
<font size="+1" face="Segoe script">Tarea:</font>
<br>
<br>
<textarea cols="50" rows="10" name="tarea" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="tarea"></textarea>
<br>
<br>
<a href="conectar.php">
<input type="submit" value="Enviar"  onclick="guardardatos()" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;">&nbsp;<input type="reset" value="Limpiar formulario" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;" name="ok" id="ok">
</a>
</form>
</center>
</body>
</html>
[/b]

en mi File Manager y se ve el resultado "pone conectado" pero cuando en el resultado doy click derecho y pongo ver código fuente de la página se ve el código pero no se ve el código PHP. No se si me entiende.

Sería vería así en File Manager:
<!DOCTYPE html>
<?php
$servername 
"sql201.260mb.net";
$username "n260m_19293384";
$password "iescalvia";

// Create connection
$conn = new mysqli($servername$username$password);

// Check connection
if ($conn->connect_error) {
    die(
"Conecxion fallida: " $conn->connect_error);

echo 
"Conectado";
?>

<script type="text/javascript">
function mensaje(){
alert("solo acepta números, puedes escribir hasta 10 caracteres");
}
</script>
<script type="text/javascript">
function solonumeros(e){
key=e.keyCode || e.which;

teclado=String.fromCharCode(key);

numeros="0123456789";

especiales="8-37-38-46-92-32-47";//array

caracteres_especiales="160-47-46-59-58";

teclado_especial=false;

for(var i in especiales){

if(key==especiales[i]){

teclado_especial=true;
}
}

if(numeros.indexOf(teclado)==-1 && !teclado_especial){
return false;
}
}
</script>
     <head>
     <title>Materia</title>
</head>

<body>
<center><font color="#333333" face="Segoe script" size="+6">Insertar deberes</font></center>
<br>
<br>
<center>
<form action="" method="post">
<font size="+1" color="#333333" face="Segoe script">Data:</font>&nbsp;<input type="text" name="data" onKeyPress="return solonumeros(event)" onpaste="return false" maxlength="10" style="background-color: lightblue; color: gray; border: inset; border-color: orange" value="-/-/-" id="data">&nbsp&nbsp<input type="button" onclick="mensaje()" style=" cursor:help; background-color:lightgreen; border-bottom-color:#66FF00;" value="i">
<br>
<br>
<font size="+1" face="Segoe script">Materia:</font>&nbsp;<input type="text" name="materia" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="materia">
<br>
<br>
<font size="+1" face="Segoe script">Tarea:</font>
<br>
<br>
<textarea cols="50" rows="10" name="tarea" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="tarea"></textarea>
<br>
<br>
<a href="conectar.php">
<input type="submit" value="Enviar"  onclick="guardardatos()" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;">&nbsp;<input type="reset" value="Limpiar formulario" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;" name="ok" id="ok">
</a>
</form>
</center>
</body>
</html>


y en código fuente de la página se ve así en el navegador:
<!DOCTYPE html>
[b][u]Conectado[/u][/b]<script type="text/javascript">
function mensaje(){
alert("solo acepta números, puedes escribir hasta 10 caracteres");
}
</script>
<script type="text/javascript">
function solonumeros(e){
key=e.keyCode || e.which;

teclado=String.fromCharCode(key);

numeros="0123456789";

especiales="8-37-38-46-92-32-47";//array

caracteres_especiales="160-47-46-59-58";

teclado_especial=false;

for(var i in especiales){

if(key==especiales[i]){

teclado_especial=true;
}
}

if(numeros.indexOf(teclado)==-1 && !teclado_especial){
return false;
}
}
</script>
     <head>
     <title>Materia</title>
</head>

<body>
<center><font color="#333333" face="Segoe script" size="+6">Insertar deberes</font></center>
<br>
<br>
<center>
<form action="" method="post">
<font size="+1" color="#333333" face="Segoe script">Data:</font>&nbsp;<input type="text" name="data" onKeyPress="return solonumeros(event)" onpaste="return false" maxlength="10" style="background-color: lightblue; color: gray; border: inset; border-color: orange" value="-/-/-" id="data">&nbsp&nbsp<input type="button" onclick="mensaje()" style=" cursor:help; background-color:lightgreen; border-bottom-color:#66FF00;" value="i">
<br>
<br>
<font size="+1" face="Segoe script">Materia:</font>&nbsp;<input type="text" name="materia" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="materia">
<br>
<br>
<font size="+1" face="Segoe script">Tarea:</font>
<br>
<br>
<textarea cols="50" rows="10" name="tarea" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="tarea"></textarea>
<br>
<br>
<a href="conectar.php">
<input type="submit" value="Enviar"  onclick="guardardatos()" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;">&nbsp;<input type="reset" value="Limpiar formulario" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;" name="ok" id="ok">
</a>
</form>
</center>
</body>
</noscript>
<div style="text-align: center;"><div style="position:relative; top:0; margin-right:auto;margin-left:auto; z-index:99999">
<script language="javascript" type="text/javascript">
lz="http://ocio.leadzu.com/banner_request.php?m=1GGYSITE66217X5&a=&idtm=468x60&lgid="+new Date().getTime();
document.write("<scr"+"ipt language='javascript' type='text/javascript' src='"+lz+"'></scr"+"ipt>");
</script>
<p>

</p>
<div align="center">Sitio alojado en <a href="http://260mb.net">260MB </a></div>
</div></div>
</html>


No entiendo porque, es normal?


Gracias
Lo increible, no es lo que ves, sino como es

Drakaris

Hice la conexión a la base de datos y me fue bien. Una pregunta? Por ejemplo abró el codigo que puese:

<!DOCTYPE html>
<?php
$servername 
"sql201.260mb.net";
$username "n260m_19293384";
$password "iescalvia";

// Create connection
$conn = new mysqli($servername$username$password);

// Check connection
if ($conn->connect_error) {
    die(
"Conecxion fallida: " $conn->connect_error);

echo 
"Conectado";
?>

<script type="text/javascript">
function mensaje(){
alert("solo acepta números, puedes escribir hasta 10 caracteres");
}
</script>
<script type="text/javascript">
function solonumeros(e){
key=e.keyCode || e.which;

teclado=String.fromCharCode(key);

numeros="0123456789";

especiales="8-37-38-46-92-32-47";//array

caracteres_especiales="160-47-46-59-58";

teclado_especial=false;

for(var i in especiales){

if(key==especiales[i]){

teclado_especial=true;
}
}

if(numeros.indexOf(teclado)==-1 && !teclado_especial){
return false;
}
}
</script>
     <head>
     <title>Materia</title>
</head>

<body>
<center><font color="#333333" face="Segoe script" size="+6">Insertar deberes</font></center>
<br>
<br>
<center>
<form action="" method="post">
<font size="+1" color="#333333" face="Segoe script">Data:</font>&nbsp;<input type="text" name="data" onKeyPress="return solonumeros(event)" onpaste="return false" maxlength="10" style="background-color: lightblue; color: gray; border: inset; border-color: orange" value="-/-/-" id="data">&nbsp&nbsp<input type="button" onclick="mensaje()" style=" cursor:help; background-color:lightgreen; border-bottom-color:#66FF00;" value="i">
<br>
<br>
<font size="+1" face="Segoe script">Materia:</font>&nbsp;<input type="text" name="materia" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="materia">
<br>
<br>
<font size="+1" face="Segoe script">Tarea:</font>
<br>
<br>
<textarea cols="50" rows="10" name="tarea" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="tarea"></textarea>
<br>
<br>
<a href="conectar.php">
<input type="submit" value="Enviar"  onclick="guardardatos()" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;">&nbsp;<input type="reset" value="Limpiar formulario" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;" name="ok" id="ok">
</a>
</form>
</center>
</body>
</html>
[/b]

en mi File Manager y se ve el resultado "pone conectado" pero cuando en el resultado doy click derecho y pongo ver código fuente de la página se ve el código pero no se ve el código PHP. No se si me entiende.

Sería vería así en File Manager:
<!DOCTYPE html>
<?php
$servername 
"sql201.260mb.net";
$username "n260m_19293384";
$password "iescalvia";

// Create connection
$conn = new mysqli($servername$username$password);

// Check connection
if ($conn->connect_error) {
    die(
"Conecxion fallida: " $conn->connect_error);

echo 
"Conectado";
?>

<script type="text/javascript">
function mensaje(){
alert("solo acepta números, puedes escribir hasta 10 caracteres");
}
</script>
<script type="text/javascript">
function solonumeros(e){
key=e.keyCode || e.which;

teclado=String.fromCharCode(key);

numeros="0123456789";

especiales="8-37-38-46-92-32-47";//array

caracteres_especiales="160-47-46-59-58";

teclado_especial=false;

for(var i in especiales){

if(key==especiales[i]){

teclado_especial=true;
}
}

if(numeros.indexOf(teclado)==-1 && !teclado_especial){
return false;
}
}
</script>
     <head>
     <title>Materia</title>
</head>

<body>
<center><font color="#333333" face="Segoe script" size="+6">Insertar deberes</font></center>
<br>
<br>
<center>
<form action="" method="post">
<font size="+1" color="#333333" face="Segoe script">Data:</font>&nbsp;<input type="text" name="data" onKeyPress="return solonumeros(event)" onpaste="return false" maxlength="10" style="background-color: lightblue; color: gray; border: inset; border-color: orange" value="-/-/-" id="data">&nbsp&nbsp<input type="button" onclick="mensaje()" style=" cursor:help; background-color:lightgreen; border-bottom-color:#66FF00;" value="i">
<br>
<br>
<font size="+1" face="Segoe script">Materia:</font>&nbsp;<input type="text" name="materia" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="materia">
<br>
<br>
<font size="+1" face="Segoe script">Tarea:</font>
<br>
<br>
<textarea cols="50" rows="10" name="tarea" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="tarea"></textarea>
<br>
<br>
<a href="conectar.php">
<input type="submit" value="Enviar"  onclick="guardardatos()" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;">&nbsp;<input type="reset" value="Limpiar formulario" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;" name="ok" id="ok">
</a>
</form>
</center>
</body>
</html>


y en código fuente de la página se ve así en el navegador:
<!DOCTYPE html>
[b][u]Conectado[/u][/b]<script type="text/javascript">
function mensaje(){
alert("solo acepta números, puedes escribir hasta 10 caracteres");
}
</script>
<script type="text/javascript">
function solonumeros(e){
key=e.keyCode || e.which;

teclado=String.fromCharCode(key);

numeros="0123456789";

especiales="8-37-38-46-92-32-47";//array

caracteres_especiales="160-47-46-59-58";

teclado_especial=false;

for(var i in especiales){

if(key==especiales[i]){

teclado_especial=true;
}
}

if(numeros.indexOf(teclado)==-1 && !teclado_especial){
return false;
}
}
</script>
     <head>
     <title>Materia</title>
</head>

<body>
<center><font color="#333333" face="Segoe script" size="+6">Insertar deberes</font></center>
<br>
<br>
<center>
<form action="" method="post">
<font size="+1" color="#333333" face="Segoe script">Data:</font>&nbsp;<input type="text" name="data" onKeyPress="return solonumeros(event)" onpaste="return false" maxlength="10" style="background-color: lightblue; color: gray; border: inset; border-color: orange" value="-/-/-" id="data">&nbsp&nbsp<input type="button" onclick="mensaje()" style=" cursor:help; background-color:lightgreen; border-bottom-color:#66FF00;" value="i">
<br>
<br>
<font size="+1" face="Segoe script">Materia:</font>&nbsp;<input type="text" name="materia" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="materia">
<br>
<br>
<font size="+1" face="Segoe script">Tarea:</font>
<br>
<br>
<textarea cols="50" rows="10" name="tarea" style="background-color: lightblue; color: gray; border: inset; border-color: orange" id="tarea"></textarea>
<br>
<br>
<a href="conectar.php">
<input type="submit" value="Enviar"  onclick="guardardatos()" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;">&nbsp;<input type="reset" value="Limpiar formulario" style="background-color: orange; border: inset; border-color: orange; cursor: pointer;" name="ok" id="ok">
</a>
</form>
</center>
</body>
</noscript>
<div style="text-align: center;"><div style="position:relative; top:0; margin-right:auto;margin-left:auto; z-index:99999">
<script language="javascript" type="text/javascript">
lz="http://ocio.leadzu.com/banner_request.php?m=1GGYSITE66217X5&a=&idtm=468x60&lgid="+new Date().getTime();
document.write("<scr"+"ipt language='javascript' type='text/javascript' src='"+lz+"'></scr"+"ipt>");
</script>
<p>

</p>
<div align="center">Sitio alojado en <a href="http://260mb.net">260MB </a></div>
</div></div>
</html>


No entiendo porque, es normal?


Gracias
Lo increible, no es lo que ves, sino como es