tek sayfa içinde değişkenler geçmek için nasıl

5 Cevap php

Ben bir php sayfasına bir form değişkenleri geçmek için nasıl bilmek istiyorum.

Teşekkürler.

Edit:

Ben bir form bazı girdi ve bir gönderme düğmesi var. Ben gönder düğmesine tıklayın sonra arama veritabanı ve ilgili bir tabloyu görüntülemek için benim php sayfa istiyorum. Ve burada bütün eylemleri bir sayfa bulunmaktadır.

Yani aynı sayfada bir php komut dosyası için bir form değişkenleri geçmek için nasıl bilmek istiyorum. Ben çok az ayrıntı bırakmak için üzgünüm.

Şimdi sorumu anlayabilir? Tekrar teşekkürler.

5 Cevap

EDIT: Bu bir PHP sayfası bir formdan bir kullanıcının girdiği değeri iletin nasıl.

Burada genel bir şeklidir:

<form method="post" action="<?php echo $_SERVER['$PHP_SELF'];?>">
  <input type="text" size="12" maxlength="12" name="name">
  ...
  ...
</form>

Şimdi PHP kodu:

<?php
  $name = $_POST["name"];
?>

Not: POST arasındaki sonrası türünü değiştirmek ve GET ve farklı bir PHP sayfası için form girdi göndermek için eylem seçeneği değiştirebilirsiniz.


Eğer bir işleve bir değişken geçirmeden bahsediyorsun?

$name = 'Robert';

printName($name);

function printName($n) {
  echo $n;
}

Tüm form değişkenleri (Form yöntemine bağlı olarak) $ _POST veya $ _GET süper küresel dizisinde sonunda. Script form görüntüler ve bunu işler hem de varsa, standart bir yöntem böyle bir şey gider:

if(isset($_POST['submit'])){
  //validate $_POST variables from form

  //if validation works do action
  //else output errors and output form again


} else {
  //output form
}

GET it from the URL

Değişkenleri aktarmak için hızlı (ama çoğu sınırlı) yolu yöntemi denir GET gereğidir. GET ile, değişkenler aktarılacak istediğiniz sayfanın URL'sini üzerine değişkenleri append:

http://www.matthom.com/contact.php?id=301&name=Matthom

Değerleri 301, ve Matthom id, ve adını, sırasıyla: Yukarıdaki örnekte contact.php sayfa iki kullanmak için değişkenleri verecekti.

İstediğiniz gibi URL'ye gibi birçok değişkeni ekleyebilirsiniz.

Dikkat - bazen size değişkenleri gösterilmesini istemiyorum "dışarı açık." Ayrıca, URL 255 karakterle sınırlı, bu nedenle değişkenler çok fazla bilgi içeremez.

Contact.php itibaren, PHP ile bu iki değişkeni GET:

URL'den DEĞİŞİKENLERİN ELLEMEK

$id = $_GET['id'];
$name =$_GET['name'];

Bir formdan POST

Daha sağlam bir yol değişkenleri aktarmak, ve şimdiye kadar başka bir yolu, bir form onları kapmak etmektir.

Kullanıcı bu form alan kodu diyelim:

<form action="process.php" method="post">
<input type="text" size="25" name="searchtype" />
<input type="text" size="25" name="searchterm" />
</form>

Bu iki giriş kutuları, kullanıcıları bilgi girmek için izin verir. Process.php anda, aynı şekilde değişkenleri kapmak:

GRAB THE VARIABLES FROM THE FORM

$searchtype = $_POST['searchtype'];
$searchterm = $_POST['searchterm'];

$_POST[] üzerinde kullanımı fark $_GET[]. Bu önemli bir ayrımdır.

Bu kolay, sadece onları yorumum:

$a = 'variable 1';
//$b = 'variable 2';
$c = 'variable 2';

Görüyorsunuz? Ben o zaman doğru doların üzerinde b geçti, ve nihayet $ c atanır, $ a atanır. Hepsi bir PHP sayfası içinde!

<?php
$value = 'bla';
function getValue($string)
{
return ($_GET[$string]);
}
$value = getValue('bla');
?>
<html>

//...
<body>
<form>
<input type="text" value="<?php echo $value; ?>" />
</form>
<tr>
<td>
<tr><?php echo $value; ?></tr>
<td>
</body>
</html>

It is totally unimportant which order you use. You can put the html part into a PHP String with PHP variables inside, and echo it, php will automatically assign the vars inside. Or you seperate HTML and PHP as seen above.

Şablon motorları ile çalışmak için deneyin, örneğin SMARTY (smarty.com)