Şimdi Ara

php mysql yardım

Bu Konudaki Kullanıcılar:
1 Misafir - 1 Masaüstü
5 sn
16
Cevap
0
Favori
363
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • html sayfasında form hazırladım bu formdan aldığım bilgileri mysql e atmak istiyorum fakat aşağıdaki scriptle formu kullandığımı zaman table içine sadece id atıyor geri kalan yerleri boş bırakıyor

    <?
    $first=$_POST['first'];
    $last=$_POST['last'];
    $phone=$_POST['phone'];
    $mobile=$_POST['mobile'];
    $fax=$_POST['fax'];
    $email=$_POST['email'];
    $web=$_POST['web'];

    mysql_connect("localhost","yyy","xxx");
    @mysql_select_db("base") or die("unable to select database");

    $query="insert into contacts values ('','$first','$last','$phone','$mobile','$fax','$email','$web')";
    mysql_query($query);

    echo "<b><center>done</center></b>";
    ?>



    şu şekilde yazdığım zaman datayı normal şekilde atıyor
    <?
    mysql_connect("localhost","yyy","xxx");
    @mysql_select_db("base") or die("unable to select database");

    $query="insert into contacts values ('','$first','$last','$phone','$mobile','$fax','$email','$web')";
    mysql_query($query);
    ?>


    bunun sebebi nedir.







  • php.ini içerisinde "register_globals" ı off yapman gerekiyor.

    register_globals = off
  • dediğini yaptım ama hala aynı problem devam etmekte birde register_globals off yapmamızın sebebi nedir
    (bu işte oldukça acemiyim de)
  • globals değişkenleri session, cookie ve form değişkenleridir. register_globals ise bu değişkenleri normal değişkenler gibi kullanmamıza olanak verir. eğer güvenlik kaygımız yok ise bu bize script yazmada kolaylık sağlar lakin değişkenlere kullanıcı tarafından müdahale şansı verdiği için büyük bir güvenlik açığı oluşturur. php bunu varsayılan(default) olarak off yapmış yani kapamış ve kapalı olarak kullanılmasını tavsiye etmiştir.

    şimdi senin sorununa dönersek; register_globals i off yaptıktan sonra

    <?
    $first=$_POST['first'];
    $last=$_POST['last'];
    $phone=$_POST['phone'];
    $mobile=$_POST['mobile'];
    $fax=$_POST['fax'];
    $email=$_POST['email'];
    $web=$_POST['web'];

    mysql_connect("localhost","yyy","xxx");
    @mysql_select_db("base") or die("unable to select database");

    $query="insert into contacts values ('','$first','$last','$phone','$mobile','$fax','$email','$web')";
    mysql_query($query);

    echo "<b><center>done</center></b>";
    ?>

    bu şekilde çalışması gerek. oraya bir yere

    echo $_POST['first'].$_POST['last'];

    şekilde bir satır ekleyerek tüm değişkenler scripte doğru şekilde geliyor mu? yani form doğru şekilde oluşturulmuş mu diye bir kontrol et bakalım...




  • ve elbette php.ini yi değiştirdikten sonra apache yi(yada web sunucun ne ise) yeniden başlatman gerekiyor
  • formmum şu şekilde

    <html>
    <body>
    <form action="insert.php" method="POST">
    First Name:<input type="text" name="first"><br>
    Last Name:<input type="text" name="last"><br>
    Phone:<input type="text" name="phone"><br>
    Mobile:<input type="text" name="mobile"><br>
    Fax:<input type="text" name="fax"><br>
    E-mail:<input type="text" name="email"><br>
    Web:<input type="text" name="web"><br>
    <input type="submit">
    </form>
    </body>
    </html>


    hala aynı şekilde tablelara yazmıyor boşluk olarak geçiyor id yi arttırıyor sadece.dediğini denedim
    echo $_POST['first']; eklesemde firstteki bilgiyi yazmıyor.



    < Bu mesaj bu kişi tarafından değiştirildi kalten -- 25 Şubat 2005, 14:28:23 >




  • burada sorun yok. apache yi yeniden başlattın mı?
  • $first=$_POST['first']; değil de $first=$_POST["first"]; bunu dene bakalim : )
  • evet ettim hatta üzerine bir de sinirlenip makinayı restart ettim ama nafile olmuyor.
  • duydun my sen benim dediği mi
  • duydum denedim olmadı ama ben sinir oldum
  • içeriği sadece aşağıdaki kod olan yeni bir php dosyası oluştur. çalıştır ve textbox a herhangi birşey yazıp enter la. bakalım çalışacak mı?

    <form method=post>
    <input type=text name=dodo>
    </form>
    <?
    echo "YAZILAN: ".$_POST['dodo'];
    ?>
  • hm sanirim şundan; hangi version php kullaniyosun acaba..

    $_POST yerine $HTTP_POST_VARS kullan
  • 4.0.5 kullanıyordum phptriad ile kurmuştum onu kaldırdım kendim apache ve php kurdum fakat konfigürasyon ayarlarını yapamadım çalıştıramıyorum.c:\php klasörünün içinde sapi diye bir klasör yaratması gerekmiyor mu?Ben bir türlü bulamadım da.
  • phptriad ve easyphp varken gerek yok tek tek uğraşmaya...
  • abicim echo'dan yazdıramadığına göre değişkeni sen göremiyorsun
    formdan sonraki sayfada direkt olarak
    <?
    $first = $_POST["first"];
    print $first;
    ?>

    de
    eğer bi şey çıkmıyorsa orda bir sorun var demektir.
    bi şey çıkıyorsa tüm satırları aynen yukardaki formattaki gibi hazırla
    inşallah olur
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.