Merhaba,
alan=$_POST["field1"]
exec('komut 2>&1' $output);
print_r($output);demişsiniz.
ilk değişkeni $alan olarak değiştirin.
alttaki 2 satırda o alan değişkeni hiç kullanılmamış. kullanıcıdan alınacak değişken hangisi ve tam olarak nerede kullanılacak anlayamadım. ama şöyle söyleyeyim tek tırnak kullanıyorsanız ve içeride değişken kullanacaksanız tırnaktan çıkıp . ile birleştirmeniz gerekir.
linuxta kod kullandığınıza göre muhtemelen az çok bilginiz var. özetle;
eğer linuxte şu kodu çalıştırıyorsanız
komut 2>&1 KULLANICIDAN_ALINAN_SEY
php'de
$degisken = 'KULLANICIDAN_ALINAN_SEY';
//ya da $degisken = $_POST['OLAN_SEY'];
exec('komut 2>&1 '.$degisken);
şeklinde kullanmalısınız.
linux'e gidecek satırı görmek için exec'i echo ile değiştirin sayfaya girin ve sayfaya dökülan satırı görün. doğru satırsa tekrar exec yapar shell'e gönderirsiniz.
kolaylıklar.
<form action="index.php" method="POST">
<input name="field1" type="text" />
<input type="submit" name="submit" value="Save Data">
</form>
<?php
alan=$_POST["field1"]
exec('komut 2>&1' $output);
print_r($output);
?>Arkadaşlar kullanıcının girdiği veriyi önceden tanımlanan komutun sonuna ekleyerek linux pc de çalıştırmak istiyorum ama başaramadım. Yardım ederseniz sevinirim.
Şunları denedim fakat olmadı:
exec('komut 2>&1', $alan, $output);
exec('komut $alan 2>&1', $output);
exec('komut 2>&1', .$_POST["field1"]. $output);