php form komut

5 Cevap php

PHP çok yeniyim ve bazı sorun yaşıyorum. Ben action = .php yöntemi = sonrası bir form kullanarak HTML var

Form metin kutuları ve seçenekleri kullanıyor, ben sqldatabase bir fark yapar emin değilim. Ben bu komut yaklaşık 30 farklı kombinasyonları denedim ve sadece bir bağlantı başarıyla mesajı alabilirsiniz ama hiçbir şey nakledilir.

<?php 
$link = mysql_connect('everybodyslistcom.ipagemysql.com', 'accounts', 'accounts'); 
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 
echo 'Connected successfully'; 
mysql_select_db("user"); 
$FName = $_POST["FName"];
$LName = $_POST["Lname"];
$Phone = $_POST["Phone"];
$EmailAddress = $_POST["EmailAddress"];
$Month = $_POST["Month"];
$Day = $_POST["Day"];
$Year = $_POST["Year"];
$Username = $_POST["Username"];
$Password = $_POST["Password"];

$sql = 'INSERT INTO Members (ID, FName, LName, Phone, EmailAddress, Month, Day, Year, Username, Password) VALUES'
    . '(\'\', \'$FName\', \'$LName\', \'$Phone\', \'$EmailAddress\', \'$Month\', \'$Day\', \'$Year\', \'$Username\', \'$Password\')';

mysql_close();
php?>

5 Cevap

Lütfen sorgusu çalıştırmak için deneyin

mysql_query($sql);

EDIT: Bunu yaptığını görmek:

$sql = 'SELECT bla bal $variable';

PHP değişken ayrıştırmak değildir. Doğru yolu:

$sql = "SELECT bla bla $variable"; // valid
$sql = "SELECT bla bla {$variable}"; // also valid
$sql = 'SELECT bla bla '.$variable; // also valid

kapanış php etiketi doğru değil, olması gerektiği

 ?>

ziyade

 php?>

Ayrıca u kullanarak sorgu yürütme değil r:

mysql_query('your query here');

Bu soruna neden olabilir.

Sen formu ". Eylem = php" kelimenin tam anlamıyla, sen çevirmek zorunda içerdiğini söyledi:

<form name="form_name" method="post" action="your_script.php">

Ayrıca POST gerçekten gönderilmiş olup olmadığını kontrol etmelisiniz:

if (!empty($_POST)) {
    // ... your code here
}

sonraki şey: Kapanış etiketi gerekmez> senin * php dosya sadece PHP kodu oluşur - eğer dosya sonu kod PHP bloğunun da doğru sonu - bu "iyi-to-var", alışkanlık, çünkü bazı durumlarda?. bu hatayı önlemek için yardımcı olur: "başlık bilgileri değiştirme / ekleme olamaz - zaten tarafından gönderilen başlıklar ..."

Sonraki sorun - dizeye değişkenleri ekleme yanlış yolu:

$sql = 'INSERT INTO Members (ID, FName, LName, Phone, EmailAddress, Month, Day, Year, Username, Password) VALUES'
. '(\'\', \'$FName\', \'$LName\', \'$Phone\', \'$EmailAddress\', \'$Month\', \'$Day\', \'$Year\', \'$Username\', \'$Password\')';

Doğru yol:

$sql = "INSERT INTO Members (ID, FName, LName, Phone, EmailAddress, Month, Day, Year, Username, Password) VALUES (null, '$FName', '$LName', '$Phone', '$EmailAddress', '$Month', '$Day', '$Year', '$Username', '$Password')";

Daha info here

next - Deniss dediği gibi, yerine:

$FName = $_POST["FName"];

olmalıdır:

$FName = mysql_real_escape_string($_POST["FName"]);

aslında hava magic quotes gpc açık veya kapalı olup olmadığını kontrol edin yumruk olmalıdır:

if (get_magic_quotes_gpc()) {
    if (!empty($_POST)) {
        array_walk_recursive($_POST, 'stripslashes_value');
    }
}
function stripslashes_value(&$value) {
    $value = stripslashes($value);
}

Bu olmadan db içine yerleştirilen çift \ \ ile sorunu olabilir (bu sizin sunucu yapılandırmasına bağlıdır)

ve son ama en az değil: Robert Bir daha önemli bir şey özledim dediği gibi:

mysql_query($sql);

Senin mysql_query fonksiyonu çağırmak değil çünkü ben senin hata düşünüyorum

benim kod düzenleme deneyebilirsiniz

<?php 
$link = mysql_connect('everybodyslistcom.ipagemysql.com', 'accounts', 'accounts'); 
if (!$link) { 
die('Could not connect: ' . mysql_error()); 
} 
echo 'Connected successfully'; 
mysql_select_db("user",$link); 
$FName = $_POST["FName"];
$LName = $_POST["Lname"];
$Phone = $_POST["Phone"];
$EmailAddress = $_POST["EmailAddress"];
$Month = $_POST["Month"];
$Day = $_POST["Day"];
$Year = $_POST["Year"];
$Username = $_POST["Username"];
$Password = $_POST["Password"];

$sql = "INSERT INTO Members SET FName='{$FName}', LName='{$LName}', Phone='{$Phone}', EmailAddress='{$EmailAddress}', Month='{$Month}', Day='{$Day}', Year='{$Year}', Username='{$Username}', Password='{$Password}'";
// Call Function mysql_query insert new record in mysql table
mysql_query($sql,$link);
mysql_close($link);
?>

Comment for me if your have problem :) or notes of apache services good day