Nueva pregunta

Pregunta:

Fecha: 23-05-2018 11:30:14 (En Español)

boton de eliminar y editar[No resuelta]

buenas necesito de su ayuda en esto . tengo un script y necesito culminarlo lo mas antes posible pero estoy atrapado porque no se como hacer que elimine y edite los botones que tienen.
<?php
/**
 * Maneja la conexión a la base de datos
 */
class Connect
{
    /** @var string */
    protected $error;
    /** @var string */
    protected $user;
    /** @var string */
    protected $pass;
    /** @var string */
    protected $base;
    /** @var string */
    protected $server;
    /** @var mysqli */
    protected $connection;
    /**
     * Connect constructor.
     *
     * @param string $user
     * @param string $pass
     * @param string $base
     * @param string $server
     */
    public function __construct($user, $pass, $base, $server)
    {
        $this->user   = $user;
        $this->pass   = $pass;
        $this->base   = $base;
        $this->server = $server;
    }
    /**
     * Conecta a la base de datos
     *
     * @return mysqli
     */
    public function connect()
    {
        $this->connection = new mysqli($this->server, $this->user, $this->pass, $this->base);
        if ($this->connection->connect_errno) {
            throw new \UnexpectedValueException("Fallo al conectar a MySQL: ({$this->connection->connect_errno}) " .
                                                $this->connection->connect_error);
        }
        return $this->connection;
    }
}
/**
 * Maneja las acciones de Trabajo
 */
class Trabajo
{
    /** @var mysqli */
    protected $connection;
    /**
     * Trabajo constructor.
     *
     * @param mysqli $conexion
     */
    public function __construct(mysqli $conexion)
    {
        $this->connection = $conexion;
    }
    /**
     * Obtiene los registros a desplegar
     *
     * @return array
     */
    public function getData()
    {
        $data   = [];
        $result = $this->connection->query('SELECT * FROM pagos_pagina');
        while ($row = $result->fetch_object()) {
            $valida      = $this->hasReferences($row->referencia);
            $row->valida = $valida;
            $data[] = $row;
        }
        return $data;
    }
    /**
     * Valida si existen referencias
     *
     * @param string $reference
     *
     * @return bool
     */
    protected function hasReferences($reference)
    {
        $statement = $this->connection->prepare('SELECT COUNT(*) AS cant FROM archivos_pagos  WHERE referencia = ?');
        $statement->bind_param('s', $reference);
        $statement->execute();
        $hayResultados = $statement->get_result()->fetch_object();
        $statement->close();
        return (bool)$hayResultados;
    }
}
$connect = new Connect('root', '', 'radius', 'localhost');
$conexion = $connect->connect();
$trabajo  = new Trabajo($conexion);
$datos = $trabajo->getData();
?>
<div class="panel-body">
    <form>
        <table width="70%" 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>Acciones</th>
                </tr>
            </thead>
            <tbody>
            <?php
            if (!\count($datos)) {
                echo <<< HTML
                <tr>
                    <th colspan="8">No hay registros</th>
                </tr>
HTML;
            } else {
                $contador = 1;
                foreach ($datos as $registro) {
                    $validTag = $registro->valida ? 'Valido' : 'Invalido';
                    echo <<< HTML
                <tr>
                    <td>{$contador}</td>
                    <td>{$registro->nombre} {$registro->apellido}</td>
                    <td>{$registro->cedula}</td>
                    <td>{$registro->referencia}</td>
                    <td>{$registro->monto}</td>
                    <td>{$validTag}</td>
                    <td>
                        <button class='btn btn-warning btn-sm' id='btn-edit-{$registro->referencia}'>Editar</button>
                        <button class="btn btn-sm btn-info" class='btn btn-warning btn-sm' id='btn-delete-{$registro->referencia}'>Eliminar</button> 
                        
                    </td>
                </tr>
HTML;
                    $contador++;
                }
            }
            ?>
            </tbody>
        </table>
    </form>
</div>


gracias de antemano
Etiquetas: HTML - MySQL - PHP - Pregunta Votos: -1 - Respuestas: 2 - Vistas: 10 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 24-05-2018 04:30:26 Lo puedes hacer de diversas maneras:
    1. Agregas un evento 'onClick' con VanillaJS o cualquier framework JS donde al darle click te envíe a una página donde borras/editas el registro.
    2. Utilizas un anchor tag para redirigir la página a otra donde borres o elimines el producto
    3. Con Ajax utilizando VanillaJS o cualquier framwork JS.

    Qué es lo que llevas hecho?
      Votos: 0 - Link respuesta
     
  • Fecha: 25-05-2018 06:18:18 bueno desidi hacerlo utilizando un js. aqui esta mi codigo pero no funciona . ya e probado mil y una forma pero no se . index.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 class="row">
                <div class="col-lg-12">
                    <div class="panel panel-default">
                        <div class="panel-heading">
                      
                        
                        </div>
                            <?php 
                                $link = new PDO('mysql:host=localhost;dbname=radius', 'root', ''); // el campo vaciío es para la password.
                            ?> 
                            <div class="panel-body">
                                <form role="form" action="controller_login.php" method="post">
                                    <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>Aciones</th>
                                            </tr>
                                        </thead>
                                        <?php
                                         require_once ("./conexion.php");
                                         session_start();
                                         // Establece los mensajes de sesion
                                         $_SESSION['message'] = "";
                                         //Valida si es enviado por post
                                         if ($_SERVER['REQUEST_METHOD'] == 'POST') {
                                             if (isset($_POST['registro_pagos'])) { // aqui me introduce los datos en registro empleados
                                                 require_once './app/registro_pagos.php'; //requiere de registro empleados
                                             } 
                                         }
                                     
                                            //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='delete.php?nombre=". $id[0]."'>Eliminar</td>
                                                           
                                                            
                                                        </tr>";
                                                }else{
                                                    echo"<tr>
                                                            <td>".$con."</td>
                                                            <td>".$row->nombre." ".$row->apellido."</td>
                                                            <td>".$row->cedula."</td>
                                                            <td>".$row->referencia."</td>
                                                            <td>".$row->monto."</td>
                                                            <td>Pago Invalido</td>
                                                            <td><a href='delete.php?pagos_pagina=". $id[0]."'>Eliminar</td>
                                                            <td></td>
                                                        </tr>";
                                                    } 
                                                    $con++;
                                                }
                                                echo "</table>";
                                                }
                                            }
                                            $p = new trabajo();
                                            $p->data();
                                        ?>
                                    </table>
                                </form>    
                            </div>    
                        </div>    
                    </div>               
                </div> 
            </div>
        </body>
    </html>
    


    conexion.php
     <?php 
    	class Db{
    		private static $conexion=null;
    		private function __construct(){}
    
    		public static function conectar(){
    			$pdo_options[PDO::ATTR_ERRMODE]=PDO::ERRMODE_EXCEPTION;
    			self::$conexion=new PDO('mysql:host=localhost;dbname=radius','root','',$pdo_options);
    			return self::$conexion;
    		}
    	}
    // aqui va unas linea de conexion extras y probar si la conexion existente funciona con mi ya arcgivo csv
    
    $servername = "localhost";
    $username = "root";
    $password = "";
     //Create connection
    $conn = new mysqli($servername, $username, $password);
    
     //Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
    mysqli_select_db($conn,'radius'); // aqui en ves de poner (csvdata) pondre radius
    
    ?>

    delete.php
     <?php
     require_once ("conexion.php");
    $id = $_GET['id'];
        $link = mysql_connect('localhost', 'root', '') or die('No se pudo conectar: ' . mysql_error());
    mysql_select_db('pagos_pagina') or die('No se pudo seleccionar la base de datos');
    $url = "";
    $sql = "DELETE FROM pagos_pagina WHERE id = $id"; 
    
    if (mysqli_query($link, $sql)) {
        mysqli_close($link);
        header('Location: mostrar.php');
        exit;
    } else {
        echo "Error borrando al usuario";
    }
    ?>
      Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com