2013-11-10 23 views
6

Vay canına, bu utanç verici. Bu sadece başka bir sıkıcı web formu olması gerekiyordu. Daha önce çok şey yaptım, ama bir sebepten dolayı bu belirli biri işbirliği yapmak istemiyor. Bir şey eksik mi? Bunu saatlerce çözmeye çalışıyorum. Yemin ederim, hiçbir şeyden kurtulmadan, her şeyi denedim.Basit biçim _POST aracılığıyla veri göndermiyor

Temel olarak, bir PHP dosyasına $ _POST aracılığıyla göndermeye çalışıyorum. Sonunda AJAX'ı kullanacağım, ama şu anda aptal şeyi POST'a bile alamıyorum. Bu yüzden gönder seçeneğini tıkladığınızda, doğru sayfaya gider. Ama ben bir hata alıyorum "Undefined Endeksi (sonra benim $ _POST değişkenimi çağıran çizgiyi işaret eder.) PHP tarafında (signup1.php) herşeyi yorumladım, böylece şimdi tüm bu var_dump($_POST); olduğunu görebiliyorum veri ve _POST gelen bir şey alıyorum, aptal şey boş.Gerçekten HTML tarafında sorun olduğunu düşünüyorum.Tüm kodumu tam olarak gönderir.Bir stil ve düzen amaçları için ekstra bir ton var. hatanın sebebi, eğer hatanın nedeni budur, belki biriniz bileceksiniz.Ayrıca, bootstrap kullanabileceğimi fark edebilirsiniz.Ama belki bir şey var? Daha önce formlar için bootstrap kullandım ve ama kim bilir.

<form action="actions/signup1.php" method="post"> 
     <div class="row"> 
      <div class="col-md-6"> 
       <div class="form-group"> 
        <label for="name">Name:</label> 
        <input type="text" id="name" class="form-control" placeholder="John Smith"> 
       </div> 
      </div> <!-- end of name input column --> 
      <div class="col-md-6"> 
       <div class="form-group"> 
        <label for="phone">Phone Number:</label> 
        <input type="text" id="phone" class="form-control" placeholder="801-321-9876"> 
       </div> 
      </div> <!-- end of phone number input column --> 
     </div> <!-- end of first .row of inputs --> 

     <div class="row"> 
      <div class="col-md-6 column-sm-12"> 
       <div class="form-group"> 
        <label for="email">Email Address:</label> 
        <input type="text" id="email" class="form-control" placeholder="[email protected]"> 
       </div> 
      </div> <!-- end of email address input column --> 

      <div class="col-md-3 col-sm-6"> 
       <div class="form-group"> 
        <label for="city">City:</label> 
        <select id="city" class="form-control"> 
         <option>Las Vegas</option> 
         <option>Salt Lake City</option> 
         <option>I'll Choose a Default Later...</option> 
        </select> 
       </div> 
      </div> <!-- end of city dropdown --> 

      <div class="col-md-3 col-sm-6"> 
       <div class="form-group"> 
        <label for="type-of-phone">Type of Phone:</label> 
        <select id="type-of-phone" class="form-control"> 
         <option>iPhone</option> 
         <option>Android</option> 
         <option>Windows Phone</option> 
         <option>Blackberry</option> 
         <option>Other Cellphone</option> 
         <option>Landline</option> 
        </select> 
       </div> 
      </div> <!-- end of Smartphone Question Dropdown --> 
     </div> <!-- end of second .row of inputs --> 
     <div class="row"> 
      <div class="col-md-12"><input type="submit" value="Submit"></div> 
     </div> 
    </form> 

kimse bana bildirin lütfen herhangi bir fikir varsa. saçımı çekerek. düşündüm ben bütün olurdu veritabanını sorgulamada sorun olan ya da AJAX ile cilalı hale getirmek için problemleri olan gece, ancak bunun yerine RAW verilerini gönderen formu bile geçemiyorum! Çok sinir bozucu. Umarım birileri sorunu görebilir.

Bu kayıt için, formun signup1.php'ye yönlendirilmesinden sonra benim doğru mesajım budur (evet, doğru sayfaya gider). PHP'de tüm yaptığım $ _POST değişkeninin bir Var_dump'idir.

var_dump($_POST); 

Ve bana gösteren bu:

array(0) { } 

cevap

30

Form alanlarına adı özellik ekleyerek edilmelidir. Örneğin

: her giriş etiketi basıp etikete adı özellik ekleyerek

<input name="phone" type="text" id="phone" class="form-control" placeholder="801-321-9876"> 
+1

Bu F $% # ing Worked = method = "post" özelliğini unuttum oldu! Ah teşekkürler. Bunun gibi basit bir şey olacağını biliyordum. İsmi ve id'i karıştırıyordum.Bu yüzden, etiketlerdeki "= =" "yi, girişteki' name = 'ile eşleşmesini istiyorsunuz. Sonra yazı dizisi için 'isim 'kullanmalıdır. Anladım. Peki ben asla bu hatayı bir daha yapmayacağım :) Teşekkürler. Başka bir 8 dakika için doğru cevabı seçmeme izin vermeyecek. Yakında kontrol edeceğim. Tekrar teşekkürler. – jacurtis

+0

Sorun yok dostum! Aslında, etiketin "for" özelliği, bağlamak istediğiniz öğenin kimliğine karşılık gelmelidir. Yuvarlak ve iyi şanslar bakın :) –

2

deneyin. Bu yapmalı.

0

Kullanım Redacted komut dosyası:

<form action="actions/signup1.php" method="post"> 
     <div class="row"> 
      <div class="col-md-6"> 
       <div class="form-group"> 
        <label for="name">Name:</label> 
        <input type="text" id="name" name="name" class="form-control" placeholder="John Smith"> 
       </div> 
      </div> <!-- end of name input column --> 
      <div class="col-md-6"> 
       <div class="form-group"> 
        <label for="phone">Phone Number:</label> 
        <input name="phone" type="text" id="phone" class="form-control" placeholder="801-321-9876"> 
       </div> 
      </div> <!-- end of phone number input column --> 
     </div> <!-- end of first .row of inputs --> 

     <div class="row"> 
      <div class="col-md-6 column-sm-12"> 
       <div class="form-group"> 
        <label for="email">Email Address:</label> 
        <input type="text" name="email" id="email" class="form-control" placeholder="[email protected]"> 
       </div> 
      </div> <!-- end of email address input column --> 

      <div class="col-md-3 col-sm-6"> 
       <div class="form-group"> 
        <label for="city">City:</label> 
        <select id="city" name="city" class="form-control"> 
         <option>Las Vegas</option> 
         <option>Salt Lake City</option> 
         <option>I'll Choose a Default Later...</option> 
        </select> 
       </div> 
      </div> <!-- end of city dropdown --> 

      <div class="col-md-3 col-sm-6"> 
       <div class="form-group"> 
        <label for="type-of-phone">Type of Phone:</label> 
        <select id="type-of-phone" name="type-of-phone" class="form-control"> 
         <option>iPhone</option> 
         <option>Android</option> 
         <option>Windows Phone</option> 
         <option>Blackberry</option> 
         <option>Other Cellphone</option> 
         <option>Landline</option> 
        </select> 
       </div> 
      </div> <!-- end of Smartphone Question Dropdown --> 
     </div> <!-- end of second .row of inputs --> 
     <div class="row"> 
      <div class="col-md-12"><input type="submit" value="Submit"></div> 
     </div> 
    </form> 

Çıktı: html formu etiketini kullanarak yazılan veriyi istiyorsanız

enter image description here

0

bunu basitçe

print_r($_POST); 
0

deneyin kontrol edebilirsiniz Her alanınıza isim vermek Girdi alanları ve ayrıca gönderilecek adı giriniz. Yani problemin çözülecek.

1

durumda başkası Ben aynı sorunu vardı bu sorunu *

var. Benim sorunum olsa da benim form elemanı