PHP'nin 'PHP_SELF' ile Sorun

4 Cevap php

Ben biraz sorun yaşıyorum. Bu büyük bir anlaşma görünmüyor, ama ben kullanıcı bir MySQL veritabanını düzenleyebilir bir sayfa oluşturduk. Onlar teslim tıkladıktan sonra o eğer deyim içinde php işlemek ve güncelleme 1 kayıt yankı gerekir. Sorun bu ifadeyi tekrarlamak için sabırsızlanıyorum olmamasıdır. Bu sadece benim eğer yazdım yolu görmezden ve tüm sayfayı görüntülemek gibi görünüyor. Ben nerede yanlış gitti kimse görebilirsiniz.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<?php require("serverInfo.php"); ?>
<?php
    $res = mysql_query("SELECT * FROM cardLists order by cardID") or die(mysql_error()); 
    echo "<select name = 'Cards'>"; 
    while($row=mysql_fetch_assoc($res)) { 
        echo "<option value=\"$row[cardID]\">$row[cardID]</option>"; 
    } 
    echo "</select>";
?>
Amount to Add: <input type="text" name="Add" />
<input type="submit" />
</form>

<?php
if(isset($_POST['submit']));
{
    require("serverInfo.php");
mysql_query("UPDATE `cardLists` SET `AmountLeft` = `AmountLeft` + ".mysql_real_escape_string($_POST['Add'])." WHERE `cardID` = '".mysql_real_escape_string($_POST['Cards'])."'");
 mysql_close($link);
 echo "1 record Updated";
}
?>
<br />
<a href="index.php"> <input type="submit" name="main" id="main" value="Return To Main" /></a>
</body>
</html>

4 Cevap

if(isset($_POST['submit']));

1) kendisinden sonra bir noktalı virgül olması gerekmez.

2) $_POST['submit'] ayarlı değil. Sen Gönder düğmesine bir ad ve bir değer vermek zorundayız. Sadece 'to' olarak türünü ayarlayarak $_POST['submit'] PHP için bir değer döndürmez.

Sen if ifadesinden sonra bir ; var.

Ben iki düğme göndermek ve ben ilk birini kullanıyorsanız varsayalım fark ettim.

Oa name="submit" vererek deneyin ve değeri çok.

Of course it doesnt. PHP runs in the server side, not in browser! Open your page source. There is no PHP. Nothing to wait. You need another page to send your form to.

Ve is büyük bir anlaşma. Bu web nasıl çalışır anlamak bir cornestone bulunuyor.