Как выполнить хранимую процедуру по нажатию кнопки Html? - PullRequest
0 голосов
/ 13 апреля 2019

Мне нужно выполнить хранимую процедуру, которая находится в базе данных, чтобы нажать кнопку Html !!

название хранимой процедуры: DeleteRow

    <form action="">
    <input type="button" value="Check" onclick="">
    </form>

Как я могу выполнить с помощью PHP ??Возможно ли это?

** SQL-запрос: **

CALL `DeleteRow`();

Ответы [ 2 ]

0 голосов
/ 13 апреля 2019

Вы можете попробовать что-то вроде этого:

HTML:

<input type='button' value='Call Procedure' id='BtnId'>

JQuery:

$(document).ready(function(){

    $("#BtnId").on( 'click', function(){

        $.ajax({
            type : "POST",
            url : "callsp.php",
            success : function(text){
                alert(text);
            }
        });

        return false;
    }); 

});

PHP: (callsp.php)

<?php

// connect to database
$connection = mysqli_connect("hostname", "username", "password", "db", "port");

// run the query
$result = mysqli_query($connection, "CALL DeleteRow") or die("Query Failed: " . mysqli_error());

// loop the result set
while( $row = mysqli_fetch_array($result) ) {
  print_r( $row );
}

?>
0 голосов
/ 13 апреля 2019

Допустим, у вас есть хранимая процедура, например,

DELIMITER $$

CREATE PROCEDURE getDetails()
BEGIN
   SELECT * FROM tablename;
END$$

Теперь вы можете выполнить это следующим образом в PHP

try {
  $pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
  // execute the stored procedure
  $sql = 'CALL getDetails()';
  // call the stored procedure
  $q = $pdo->query($sql);
  $q->setFetchMode(PDO::FETCH_ASSOC);
 } catch (PDOException $e) {
  die("Error occurred:" . $e->getMessage());
 }

while ($r = $q->fetch()){
  /*
  * Do something
  */
}

При щелчке вы можете реализовать Ajax длясделай так, чтоб это работало.Вы можете следовать Пример PHP Ajax

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...