Bir FORM PHP Sorgulama

2 Cevap php

Yani ben bir sayfaya göndermek bir form var ve formda ben ile benim sorgulardan birini oluşturmak ve sonra sayfamda onları aramak belirli değişkenleri gönderme ediyorum. Nasıl bir sorgu oluşturmak ve bir çağrı cevap görüntülemek de veri gönderebilir ve olabilir?

Belki de doğru ifade değil ve ben bu şeyler öğrenme yaşıyorum, ama ben sadece bilmiyorum. Ben ilk bir ara sayfaya göndermek gerekir?

Örnek: Form (değişkenler A & B)-> sayfa (A & sorguda kullanılan B) ve daha sonra sonuç aynı sayfada.

Bu yapılır ve yöntem ne olabilir?

Teşekkürler!

2 Cevap

Bu temel priniciple olduğunu, ama size formdan giriş verilerini sterilize edilmelidir. Örneğin kullanarak mysql_real_escape_string().

Ama tek bir sayfada (Ben bu bilgisayarda mümkün değilim, bu test değil) böyle bir kod olabilir:

<?php

if(isset($_POST['name']))
{
   $query = "SELECT * FROM table WHERE firstname = '"+ mysql_real_escape_string($_POST['name']) +"'";
   while($node = mysql_fetch_rows())
   {
      echo "The result: " . $node['id'];
   }
}

?>

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

Bu, ona kendini yayınlamak sorguyu çalıştırmak ve sonucu yankı ve formu tekrar gösterecektir.

Küçük araçlar ve benzerleri için, bu bir ok yaklaşımdır, ancak daha büyük web siteleri için ben html ile istek işleme kodu karıştırma değil tavsiye ederim. Mvc desen veya bunun gibi bir şey uygulamak için bir çerçeve kullanarak içine bak.

Spesifik örneklerle olmadan bunu yazmak zor, ama oldukça basit.

Bir çok temel bir şekilde:

Dosya1.php:

--your form submits to file2.php--

File2.php:

function processForm(inputs) [
  --MySql query goes here--
]

function displayResults() [
  --Process your query results--
]

processForm($_POST['vars']...);
displayResults();

Bu mantıklı mı? Sadece işler ve sonra tekrar sonuçlarını görüntüleyen bir işlev yapmak.

Eğer gerçekten fantezi almak istiyorsanız hatta tek bir dosyada hepsini yapabilir, ama sen ilk öğrenme iseniz, muhtemelen bu tekniği ilk ana gerekir.