Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Drakaris en 13 Diciembre 2016, 19:07 pm



Título: Hacer un formulario que guarde los datos en una base de datos [PHPMyAdmin]
Publicado por: Drakaris en 13 Diciembre 2016, 19:07 pm
Hola hice este codigo con un tutorial:
Código:
<!-- 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:
Código:
<?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.
(http://C:\Users\IVAN HEREDIA PLANAS\Pictures\fallo 1.png)
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


Título: Re: Hacer un formulario que guarde los datos en una base de datos [PHPMyAdmin]
Publicado por: [u]nsigned en 13 Diciembre 2016, 19:31 pm
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.


Título: Re: Hacer un formulario que guarde los datos en una base de datos [PHPMyAdmin]
Publicado por: Drakaris en 13 Diciembre 2016, 20:00 pm
Es decir que me lo que me esta diciendo es poblema del servidor 260mb.net o de mi ordenador?


Título: Re: Hacer un formulario que guarde los datos en una base de datos [PHPMyAdmin]
Publicado por: [u]nsigned en 14 Diciembre 2016, 02:24 am
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?


Título: Re: Hacer un formulario que guarde los datos en una base de datos [PHPMyAdmin]
Publicado por: Drakaris en 17 Diciembre 2016, 23:46 pm
Hice la conexión a la base de datos y me fue bien. Una pregunta? Por ejemplo abró el codigo que puese:
Código:
<!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:
Código:
<!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:
Código:
<!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


Título: Re: Hacer un formulario que guarde los datos en una base de datos [PHPMyAdmin]
Publicado por: Drakaris en 18 Diciembre 2016, 21:00 pm
Hice la conexión a la base de datos y me fue bien. Una pregunta? Por ejemplo abró el codigo que puese:
Código:
<!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:
Código:
<!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:
Código:
<!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