Nueva pregunta

Pregunta:

Fecha: 24-04-2018 04:43:40 (En Español)

guardar registro en tablas mysqli [No resuelta]

mi scripts esta bien pero quiero añadirles algunas modificaciones y son las siguientes . tengo una tabla donde muestro resltados de una comparacion que coinsiden o no . los que coinsiden son validos y los que no soinsiden son invalidos . por lo que me hice dos tablas con esos mismos nombre . quiero es guardar esa infoamacion mas un comentario en esas tablas pero no logro hacerlo no me da error y todo aparentemente esta bien pero no gaurda nada en ningun lado porfavor su ayuda me servira de bastante.. este es mi codigo
index.php
 <?php
error_reporting(E_ALL);
    require_once ("./app/conexion.php");
    session_start();
    // Establece los mensajes de sesion
    $_SESSION['message'] = "";
    //Valida si es enviado por post
    //Valida si es enviado por post
    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        if (isset($_POST['deuda'])) { 
            require_once './app/validos.php'; 
        } 
    }
?>
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>Pagos Listos</title>
    </head>
    <body>
        <div class="row">
            <div class="col-lg-12">
                <h1 class="page-header">Administradores Registrados</h1>
            </div>
            <div id="continer-alerta"> 
            <div style="color:#fff;"class="mensaje-alerta">
                <?php echo $_SESSION['message'] ?> 
            </div>
                </br></br>
        </div>    
        <div class="row">
            <div class="col-lg-12">
                <div class="panel panel-default">
                    <div class="panel-heading">
                        Aqui se visualizara los pagos validos y los no validos
                    </div>
                        <div class="panel-body">
                            <form>
                                <table method="post" action="#" width="100%" class="table table-striped table-bordered table-hover" id="dataTables-example" >
                                    <thead>
                                        <tr>
                                            <th>Ticket</th>
                                            <th>Usuario</th>
                                            <th>Cedula</th>
                                            <th>Referencia</th>
                                            <th>Monto</th>
                                            <th>Estatus</th>
                                            <th>Reportado</th>
                                            <th>Comentario</th>
                                        </tr>
                                    </thead>
                                    <?php
                                    //Clase para manejar la conexion a la base de datos
                                    class Connect
                                    {
                                        private $user = "root";//usuario de mysqlk
                                        private $pass = "";//clave de mysql
                                        private $base = "radius";//base de datos en mysql
                                        private $server = "localhost";//servidor de alojamiento
                                        public  $error;//en caso de error se almacena aqui
                                        public  $db;
                                        public  function __construct(){
                                            $mysqli = new mysqli($this->server, $this->user, $this->pass, $this->base);
                                            if ($mysqli->connect_errno) {
                                                $this->error = "Fallo al conectar a MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
                                            }
                                            $this->db = $mysqli;
                                        }
                                    }
                                    //Clase trabajo que se extiende de Connect
                                    class Trabajo extends Connect
                                    {
                                        public function __construct(){
                                            parent::__construct();
                                        }
                                        public function valida($x){
                                                $a = $this->db->query("SELECT * FROM archivos_pagos WHERE referencia = '$x' ");
                                                
                                                
                                        $t = $a->num_rows;

                                                if($t>=1){
                                                    //Si el cliente realizó el pago retorno la información
                                                    $row = $a->fetch_object();
                                                    return $row;
                                                }else{
                                                    //si no retorno falso
                                                    return false;
                                                }
                                        }
                                        public function data(){
                                            $a = $this->db->query("SELECT * FROM pagos_pagina");
                                            $con=1;
                                            while($row = $a->fetch_object()){
                                                //Envío a validar la referencia del cliente
                                                $valida = $this->valida($row->referencia);
                                              

                                                if($valida){                           
                                        echo "<tr> 
                                            <td>".$con."</td>
                                            <td>".$row->nombre." ".$row->apellido."</td>
                                            <td>".$row->cedula."</td>
                                            <td>".$valida->referencia."</td>
                                            <td>".$row->monto."</td>
                                            <td>Valido</td>
                                            <td><a href='#'> <butoon type='button' class='btn btn-success'>Valido</button></a></td>
                                            <td><div class='panel-footer'>
                                            <div class='input-group'>
                                                <input type='text' id='comentario' name='comentario'   id='btn-input'  class='form-control input-sm' placeholder='Escribe un Comentario' />
                                                <span class='input-group-btn'>
                                                    <button type='submit' value='validos' name='validos' class='btn btn-warning btn-sm' id='btn-chat'> Enviar </button>
                                                </span>
                                            </div>
                                        </div></td>

                                        </tr>";
                                    }else{
                                        echo "<tr>
                                                <td>".$con."</td>
                                                <td>".$row->nombre." ".$row->apellido."</td>
                                                <td>".$row->cedula."</td>
                                                <td>".$row->referencia."</t>
                                                <td>".$row->monto."</t>
                                                <td>Invalido</td>
                                                <td><a href='#'> <butoon type='button' class='btn btn-danger'>Invalido</button></a></td>
                                                <td><div class='panel-footer'>
                                                    <div class='input-group'>
                                                        <input id='btn-input 'type='text' class='form-control input-sm' placeholder='Escribe un Comentario' />
                                                        <span class='input-group-btn'>
                                                            <button class='btn btn-warning btn-sm' id='btn-chat'> Enviar </button>
                                                        </span>
                                                    </div>
                                                </div></td>
                                            </tr>";
                                            } 
                                            $con++;
                                            }
                                            echo "</table>";
                                        }
                                    }
                                    $p = new trabajo();
                                    $p->data();
                                    ?>
                                    
                                </table>
                            </form>    
                        </div>    
                    </div>    
                </div>               
            </div> 
        </div>
    </body>
</html>


app/validos.php
 <?php
error_reporting(E_ALL);
    $ticket = $conn->escape_string($_POST['ticket']);
    $usuario = $conn->escape_string($_POST['usuario']);
    $cedula = $conn->escape_string($_POST['cedula']);
    $referencia = $conn->escape_string($_POST['referencia']);
    $monto = $conn->escape_string($_POST['monto']);
    $estatus = $conn->escape_string($_POST['estatus']);
    $telefono = $conn->escape_string($_POST['telefono']);
    $comentario = $conn->escape_string($_POST['comentario']);

            $sql = 
                "INSERT INTO validos(
                    ticket, 
                    usuario, 
                    cedula, 
                    referencia, 
                    monto,
                    estatus,
                    telefono,
                    comentario
                    ) 
                    "."
                    VALUES (
                        '$ticket',
                        '$usuario',
                        '$cedula',
                        '$referencia',
                        '$monto',
                        '$estatus',
                        '$telefono',
                        '$comentario'
                )";
                if ($conn->query($sql) === true) {
                    $_SESSION['message'] = 'Su informacion a sigo guardado correctamente ';
                } else {
                    // Devuelve un mensaje de error
                    $_SESSION['message'] = 'Ocurrio un error al guardar la informacion';
                 }
        
 


app/conexion.php

<?php
error_reporting(E_ALL);
    $servername = "localhost";
    $config = parse_ini_file('./security/config.ini');

    // Create connection
    $conn = new mysqli($servername, $config['username'], $config['password'], $config['dbname']);

    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
?> 


security/config.ini
 [database]
username = root
password = 
dbname = radius


lo unico que cambia es que mi url es (localhost) y cuendo le doy a enviar cambia a (http://localhost/?comentario=josias&validos=validos&comentario=&comentario=&comentario=&comentario=)
Etiquetas: Base de Datos - MySQL - Script PHP Votos: 0 - Respuestas: 3 - Vistas: 11 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 24-04-2018 08:15:21 Hola Josias,
    Te recomiendo limpiar tu código.
    Tienes mal el HTML (el formulario está mal construido, etiquetas con errores de sintáxis, etc), mezclas programación procedural con OOP, no sigues estándares, declaras clases a mitad del archivo index, no hay buenas prácticas (DRY, KISS, SOLID, PSR), tienes código repetido, tu formulario no está enviando lo que estás recibiendo, es un código inseguro, etc.

    Honestamente son demasiados errores y habría que rehacerlo todo.

    Empieza por arreglar el HTML, después arregla el PHP sin mezclar procedural con OOP y te darás cuenta de tus errores.

    Si quieres simplificarte la vida utiliza un IDE para que te ayude a detectar todos tus errores, eso te va a ahorrar tiempo, aunque no solucionará todo pero sería un buen comienzo.

    Saludos
      Votos: 0 - Link respuesta
     
  • Fecha: 26-04-2018 04:11:36 buenas ernesto gracias por tus sigerencia . hay cosas que aun no domino en el mundo de la programacion y bueno el hecho de que ligo lo prosedural con opp es que este codigo a sido hecho gracias a aportes de esta mispa plataforma . pero e leido y e entendido algunas cosas y bueno espero haberlo podido arreglar mejor . index .php
    <?php
        require_once ("./app/conexion.php");
        session_start();
        $_SESSION['message'] = "";
        if ($_SERVER['REQUEST_METHOD'] == 'POST') {
            if (isset($_POST['valido'])) { 
                require_once './app/validos.php'; 
            } 
        }
    ?>
    <!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="utf-8">
            <title>Pagos Listos</title>
        </head>
        <body>
            <div>
                <div>
                    <h1>Pagos Realizados</h1>
                </div>
                <div> 
                    <div style="color:#fff;"class="mensaje-alerta">
                        <?php echo $_SESSION['message'] ?> 
                    </div>
                </div>    
                <div>
                    <div>
                        <form>
                            <table method="post" action="#" width="90%" >
                                <thead>
                                    <tr>
                                        <th>Ticket</th>
                                        <th>Usuario</th>
                                        <th>Cedula</th>
                                        <th>Referencia</th>
                                        <th>Monto</th>
                                        <th>Estatus</th>
                                        <th>Reportado</th>
                                        <th>Comentario</th>
                                    </tr>
                                </thead>
                                <?php
                                    class Trabajo extends Connect{
                                    public function __construct(){
                                        parent::__construct();
                                    }
                                    public function valida($x){
                                        $a = $this->db->query("SELECT * FROM archivos_pagos WHERE referencia = '$x' ");   
                                        $t = $a->num_rows;
                                        if($t>=1){
                                            $row = $a->fetch_object();
                                            return $row;
                                        }else{
                                            return false;
                                        }
                                    }
                                    public function data(){
                                        $a = $this->db->query("SELECT * FROM pagos_pagina");
                                        $con=1;
                                        while($row = $a->fetch_object()){
                                            $valida = $this->valida($row->referencia);
                                            if($valida){                           
                                            echo"<tr> 
                                                <td>".$con."</td>
                                                <td>".$row->nombre." ".$row->apellido."</td>
                                                <td>".$row->cedula."</td>
                                                <td>".$valida->referencia."</td>
                                                <td>".$row->monto."</td>
                                                <td>Valido</td>
                                                <td><a href='#'> <butoon type='button'>Valido</button></a></td>
                                                <td><div>
                                                <div class='input-group'>
                                                    <input type='text' id='comentario' name='comentario' placeholder='Escribe un Comentario' />
                                                    <span>
                                                        <button type='submit' value='validos' name='validos'> Enviar </button>
                                                    </span>
                                                </div>
                                            </div></td>
                                            </tr>";
                                            }else{
                                        echo "<tr>
                                                <td>".$con."</td>
                                                <td>".$row->nombre." ".$row->apellido."</td>
                                                <td>".$row->cedula."</td>
                                                <td>".$row->referencia."</t>
                                                <td>".$row->monto."</t>
                                                <td>Invalido</td>
                                                <td><a href='#'> <butoon type='button'>Invalido</button></a></td>
                                                <td><div class='panel-footer'>
                                                    <div class='input-group'>
                                                        <input 'type='text' placeholder='Escribe un Comentario' />
                                                        <span class='input-group-btn'>
                                                            <button> Enviar </button>
                                                        </span>
                                                    </div>
                                                </div></td>
                                            </tr>";
                                            } 
                                            $con++;
                                            }
                                            echo "</table>";
                                        }
                                    }
                                    $p = new trabajo();
                                    $p->data();
                                ?>   
                            </table>    
                        </form>    
                    </div>               
                </div> 
            </div>
        </body>
    </html>

    app/conexion.php
    <?php
        $servername = "localhost";
        $config = parse_ini_file('./security/config.ini');
    
        // Create connection
        $conn = new mysqli($servername, $config['username'], $config['password'], $config['dbname']);
    
        // Check connection
        if ($conn->connect_error) {
            die("Connection failed: " . $conn->connect_error);
        } 
        class Connect{
            private $user = "root";
            private $pass = "";
            private $base = "radius";
            private $server = "localhost";
            public  $error;
            public  $db;
            public  function __construct(){
                $mysqli = new mysqli($this->server, $this->user, $this->pass, $this->base);
                if ($mysqli->connect_errno) {
                    $this->error = "Fallo al conectar a MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
                }
                $this->db = $mysqli;
            }
        }
    ?>

    perdon si aun tengo errores . el codigo me funciona bien pero quisiera que me pueda registrar en que sea el comentario en mi base de datos
      Votos: 0 - Link respuesta
     
  • Fecha: 27-04-2018 04:16:02 amigos estoy aqui necesito de sus ayuda porfa   Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com