如何在不刷新网页的情况下打印PHP?
首先,感谢所有的建议。 因此,我有一个php,名为sys.php,还有一个python程序,名为button.py,如果我按下其中一个按钮,网页就会打印出来,无论GPIO是低还是高。现在这个工作非常完美,现在我想达到这个目标,它可以在不刷新网页的情况下获取信息,我如何才能真正做到这一点?我听说过Ajax和JQuery,但我知道它是如何工作的 这里是sys.php,其中一些片段是用匈牙利语编写的,因为我来自那里,希望不会打扰您如何在不刷新网页的情况下打印PHP?,php,python,jquery,ajax,apache,Php,Python,Jquery,Ajax,Apache,首先,感谢所有的建议。 因此,我有一个php,名为sys.php,还有一个python程序,名为button.py,如果我按下其中一个按钮,网页就会打印出来,无论GPIO是低还是高。现在这个工作非常完美,现在我想达到这个目标,它可以在不刷新网页的情况下获取信息,我如何才能真正做到这一点?我听说过Ajax和JQuery,但我知道它是如何工作的 这里是sys.php,其中一些片段是用匈牙利语编写的,因为我来自那里,希望不会打扰您 <html lang="hu"> <head>
<html lang="hu">
<head>
<title>Project</title>
<meta charset="UTF-8">
<link rel="icon" href="logo.jpg" type="image/gif" sizes="16x16">
<link rel="stylesheet" type="text/css" href="projekt.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
</script>
</head>
<body>
<p class="small"><big>Project</big></p>
<p class="ex2">Choose GPIO </p>
<table style="width:95%">
<tr>
<td><form method="post"><input type="submit" value="GPIO 7" name="GPIO7"></form></td>
<td><form method="post"><input type="submit" value="GPIO 8" name="GPIO8"></form></td>
<td><form method="post"><input type="submit" value="GPIO 10" name="GPIO10"></form></td>
<td><form method="post"><input type="submit" value="GPIO 11" name="GPIO11"></form></td>
<td><form method="post"><input type="submit" value="GPIO 12" name="GPIO12"></form></td>
<td><form method="post"><input type="submit" value="GPIO 13" name="GPIO13"></form></td>
<td><form method="post"><input type="submit" value="GPIO 15" name="GPIO15"></form></td>
<td><form method="post"><input type="submit" value="GPIO 16" name="GPIO16"></form></td>
<td><form method="post"><input type="submit" value="GPIO 18" name="GPIO18"></form></td>
<td><form method="post"><input type="submit" value="GPIO 19" name="GPIO19"></form></td>
<td><form method="post"><input type="submit" value="GPIO 21" name="GPIO21"></form></td>
<td><form method="post"><input type="submit" value="GPIO 22" name="GPIO22"></form></td>
</tr>
<tr>
<td><form method="post"><input type="submit" value="GPIO 23" name="GPIO23"></form></td>
<td><form method="post"><input type="submit" value="GPIO 24" name="GPIO24"></form></td>
<td><form method="post"><input type="submit" value="GPIO 26" name="GPIO26"></form></td>
<td><form method="post"><input type="submit" value="GPIO 29" name="GPIO29"></form></td>
<td><form method="post"><input type="submit" value="GPIO 31" name="GPIO31"></form></td>
<td><form method="post"><input type="submit" value="GPIO 32" name="GPIO32"></form></td>
<td><form method="post"><input type="submit" value="GPIO 33" name="GPIO33"></form></td>
<td><form method="post"><input type="submit" value="GPIO 35" name="GPIO35"></form></td>
<td><form method="post"><input type="submit" value="GPIO 36" name="GPIO36"></form></td>
<td><form method="post"><input type="submit" value="GPIO 37" name="GPIO37"></form></td>
<td><form method="post"><input type="submit" value="GPIO 38" name="GPIO38"></form></td>
<td><form method="post"><input type="submit" value="GPIO 40" name="GPIO40"></form></td>
</tr>
</table>
<div id="demo">
<?php
if(isset($_POST['GPIO7']))
{
$output=exec("sudo python /var/www/html/gomb.py '7' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO8']))
{
$output=exec("sudo python /var/www/html/gomb.py '8' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO10']))
{
$output=exec("sudo python /var/www/html/gomb.py '10' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO11']))
{
$output=exec("sudo python /var/www/html/gomb.py '11' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO12']))
{
$output=exec("sudo python /var/www/html/gomb.py '12' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO13']))
{
$output=exec("sudo python /var/www/html/gomb.py '13' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO15']))
{
$output=exec("sudo python /var/www/html/gomb.py '15' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO16']))
{
$output=exec("sudo python /var/www/html/gomb.py '16' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO18']))
{
$output=exec("sudo python /var/www/html/gomb.py '18' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO19']))
{
$output=exec("sudo python /var/www/html/gomb.py '19' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO21']))
{
$output=exec("sudo python /var/www/html/gomb.py '21' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO22']))
{
$output=exec("sudo python /var/www/html/gomb.py '22' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO23']))
{
$output=exec("sudo python /var/www/html/gomb.py '23' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO24']))
{
$output=exec("sudo python /var/www/html/gomb.py '24' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO26']))
{
$output=exec("sudo python /var/www/html/gomb.py '26' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO27']))
{
$output=exec("sudo python /var/www/html/gomb.py '27' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO28']))
{
$output=exec("sudo python /var/www/html/gomb.py '28' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO29']))
{
$output=exec("sudo python /var/www/html/gomb.py '29' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO31']))
{
$output=exec("sudo python /var/www/html/gomb.py '31' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO32']))
{
$output=exec("sudo python /var/www/html/gomb.py '32' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO33']))
{
$output=exec("sudo python /var/www/html/gomb.py '33' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO35']))
{
$output=exec("sudo python /var/www/html/gomb.py '35' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO36']))
{
$output=exec("sudo python /var/www/html/gomb.py '36' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO37']))
{
$output=exec("sudo python /var/www/html/gomb.py '37' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO38']))
{
$output=exec("sudo python /var/www/html/gomb.py '38' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
elseif(isset($_POST['GPIO40']))
{
$output=exec("sudo python /var/www/html/gomb.py '40' ");
echo "<pre>A GPIO értéke: ";
print_r($output);
echo ".</pre>";
}
?>
</body>
</html>
我的建议是编写一个javascript函数,异步向Web服务器请求新信息。如果有,您可以操纵DOM以适应新信息 要做到这一点,您的php代码需要在一个单独的文件中,因为AJAX只能调用整个脚本。让我们称之为“code.php” 在HTML中,您需要一个地方来写入javascript中的值 HTML: DOM操作:
Ajax:您好,您将不得不使用Ajax,它与您的python实现几乎没有关系:我建议您看看这个
#!/usr/bin/env python
import sys
import RPi.GPIO as GPIO
var=int(sys.argv[1])
GPIO.setmode(GPIO.BOARD)
GPIO.setup(var, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
print(GPIO.input(var))
<p id="output"></p>
setInterval(myMethod, 1000);
function myMethod( )
{
//this function will be called every second
//now you can asynchronously ask the server
$.ajax({ url: '/path/to/your/code.php',
type: 'post',
success: function(output) {
//this function is called when the php script finished executing
//'output' is your new data
//now you can write it into the HTML
document.getElementById('output').innerHTML = output;
}
});
}