나는 웹 개발 기술을 향상시키기 위해 아주 기본적인 웹 사이트를 사용하고 있습니다. 나는 사용자가 작성한 양식의 입력을 처리하기 위해 PHP를 사용하기 시작했습니다. 스크립트는 양식에서 데이터를 가져온 다음 Pushbullet API를 사용하여 입력 한 데이터를 휴대 전화로 전송합니다. 나는 pushmsg라는/usr/bin 디렉토리에 둔 bash 스크립트를 실행하기 위해 exec 함수를 사용하고있다. 이 스크립트는 세 가지 인수를 취합니다.이 인수는 양식의 세 가지 정보입니다. 문제는 세 변수가 exec 함수 안에있을 때 작동하지 않는 것입니다. 메시지는 내 전화기로 보내지지만 기본적으로 pushmsg 명령을 사용하여 입력 한 데이터가없는 헤더 만 보냅니다. 여기 exec를 사용할 때 인수로 PHP 변수
코드입니다 : 또한<html>
<body>
<link rel="stylesheet" type="text/css" href="style.css">
<?php
$name = $_POST["name"];
$phone = $_POST["phone"];
$core = $_POST["core"];
exec('pushmsg echo $name echo $phone echo $core');
?>
<h1>request submited successfully</h1>
<p>thanks for sending yout request, <?php echo $_POST["name"]; ?>.<br>
a text will be sent to <?php echo $_POST["phone"]; ?> once your details have been confirmed.
</p>
<div class="center">
<button class="button" action="/index.html">home page</button>
</div>
</body>
</html>
, 나는 사용자의 입력과 간부 기능을 사용하는 것이 특히 안전하지 않습니다 알고 있지만,이 웹 사이트는에서 언제든지 공개 될 수 없습니다 가까운 장래에, 내가 필요할 때 그것을 처리 할 것입니다.
도움을 주시면 감사하겠습니다.
$command = "pushmsg echo $name echo $phone echo $core";
$output = exec($command);
당신은 $output
변수에 exec
의 출력의 마지막 줄을 잡을 수 :
큰 따옴표를 사용하고 exec에서 에코를 제거해보십시오 – shashi
그리고 하나님의 사랑을 위해 사용하기 전에'$ _POST' 데이터의 유효성을 검사하십시오! – fubar
그게 다 했어, 고마워. 그리고 웹 사이트 @fubar를 게시 할 때 내가 말했던 것처럼 내가 살펴볼 것입니다. –