|
Yazan
|
Konu: Combobox seçimine göre inputbox gösterme nasıl oluyor? (Okunma Sayısı 261 defa)
|
TechEngineer
Dr.UnknowError
PHP Öğrencisi
Offline
Mesaj Sayısı: 67
Başkasının izinden gidenler, iz bırakamazlar...
|
Arkadaşlar,
Benim bir formumda 3 seçimli bir combobox var. Bu select list'ten 2. seçildiğinde. 2 adet inputbox çıkmasını istiyorum ve FORM submit edildiğinde eğer bu input kutuları eklenmişse orada ki verileride göndermesini istiyorum.
Bunu AJAX ile nasıl yapabilirim. Programlama dili olarak PHP kullanıyorum.
|
|
|
|
|
Logged
|
Gitmeyi bilirim,Gitmeye bilirim.
|
|
|
|
obareey
|
burada AJAX kullanmana gerek yok. bir div açarsın ve onselect ile comboboxtan gelen değere göre div içine inputbox yerleştirirsin. (JS ile - innerHTML kullanabilirsin). daha sonra da php sayfanda inputbox'tan post edilmiş mi edilmemiş mi kontrol ettirirsin. ya da combobox değerini kontrol ettirirsin daha garanti olur...
|
|
|
|
|
Logged
|
|
|
|
TechEngineer
Dr.UnknowError
PHP Öğrencisi
Offline
Mesaj Sayısı: 67
Başkasının izinden gidenler, iz bırakamazlar...
|
Teşekkür ederim. Fakat kafama takılan bir şey var. Mesela aşağıda ki kodlarda THY seçilirse 2 inputbox açacak. ve value="" değerleri NULL bulunuyor. Bu değerleri seçmediğim halde de null olarak gönderecek mi? Yoksa sadece seçili iken mi? value="" değerlerini gönderecek. <script type="text/javascript"> /* Powered by QRESELTech */ function ShowReg(op) { document.getElementById('THY').style.display='none';
if (op == 3) { document.getElementById('THY').style.display="block"; } } </script>
<select id="choice" onChange="ShowReg(this.selectedIndex)"> <option value="0">Lütfen Seçim Yapınız! <option value="1">OnurAir <option value="2">AtlasJet <option value="3">THY </select> <br> <div id="THY" style="display:none"> BiletNo: <input type="text" id="BNo" value=""><br> Güzergah: <input type="text" id="Ggah" value=""> </div>
Bir de value="" değerleri 0,1,2,3 diye kontrol ediliyor. String değer olarka nasıl kontrol ettirebilirim. Mesela THY'nin value="THY" olsun. 3 yerine THY' yi kontol etsin (op == THY) şeklinde bir şey nasıl yapabilirim. Böylece veri tabanına 3 yerine THY yazmasını sağlayabilirim.
|
|
|
|
« Son Düzenleme: Ocak 29, 2008, 03:20:40 am Gönderen: TechEngineer »
|
Logged
|
Gitmeyi bilirim,Gitmeye bilirim.
|
|
|
TechEngineer
Dr.UnknowError
PHP Öğrencisi
Offline
Mesaj Sayısı: 67
Başkasının izinden gidenler, iz bırakamazlar...
|
ve PHP ile FORM'u POST ettiğimde bazı değişkenleri yazdırmıyor SQL tablosunda ki bazı sutünlara. mysql_query'lerim kontrol ettim. Hiç birinde problem gözükmüyor. mysql_error() şeklinde denetim de ekledim ama hata da döndürmüyor. Çıldırıcam sonunda PHP ile AJAX neden böyle yapıyor anlamadım. Halbuki çok uyumlu olmaları gerek. Kodları POST ettirdiğim kodlar şöyle; <?php
$db = mysql_connect("localhost", "root","şifre");
mysql_select_db("nets_cms",$db);
mysql_query("SET NAMES'latin5' ");
$FirmaUnvani = $_POST['Funvan'];
$MusteriAdi = $_POST['Musteri'];
$Diger_Telefonu = $_POST['Diger_Telefonu'];
$RezNO = $_POST['RezNo'];
$Tutar = $_POST['Verecek'];
$OdemeTipi = $_POST['OdemeTipi'];
$SatisTuru = $_POST['SatisTuru'];
$BiletNo = $_POST['BNo'];
$Guzergah = $_POST['Ggah'];
$Firma = $_POST['Firma'];
$sql=mysql_query("INSERT INTO mkayit (Musteri,Telefon_Diger,FU,RezNo)
VALUES ('$MusteriAdi','$Diger_Telefonu','$FirmaUnvani','$RezNo')");
if(!$sql) {
echo 'hata mesajı '.mysql_error($sql).'';
}
$sql1=mysql_query("INSERT INTO cari (Musteriler,RezNo,Verecek,OdemeTipi,SatisTuru)
VALUES ('$MusteriAdi','$RezNO','$Tutar','$OdemeTipi','$SatisTuru')"); if(!$sql1) {
echo "HATA ".mysql_error($sql1)."";
} $sql2=mysql_query("INSERT INTO thy (YolcuAdi,Firma,BiletNo,Guzergah)
VALUES ('$MusteriAdi','$Firma','$BiletNo','$Guzergah')");
if (!$sql2) {
Print "HATA: ".mysql_error($sql2)."";
}
Print " <center><font color='Green' size='+1'>Kaydınız Başarıyla Gerçekleşmiştir.</font>
"; ECHO "<a href='satis.php'><img src='../Grafik/anasayfa-mini.png' alt='Ana Sayfaya Gitmek İçin Tıklayınız!' border='0'></a></center>";
/*ELSE{ Print "HATALI Bir işlem kümesi yürütüldü. Bu yüzden sistem bunu durdurdu ve NetsCRM Yönetimine Haber Verildi!"; } */ ?>
Neyse bir çözüm bilen varsa ve paylaşırsa sevinirim. İyi çalışmalar.
|
|
|
|
« Son Düzenleme: Ocak 29, 2008, 04:33:37 am Gönderen: TechEngineer »
|
Logged
|
Gitmeyi bilirim,Gitmeye bilirim.
|
|
|
|
obareey
|
1. şu haliyle post ettiğinde seçmesen de null değer gönderir. göndermesini istemiyorsan gizlediğinde bir de ek olarak "disable" yapman gerek.
2. onChange="ShowReg(this.selectedIndex)" yerine onChange="ShowReg(this)" yaparsın, fonksiyonda da... if (op.value == "THY") yaparsın olur biter...
3. başka neler yapıyorsun bilmiyorum ama buradaki kodların AJAX ile uzaktan yakından ilgisi yok.
4. öneri olarak hangi değişkenleri yazdırmıyorsa onları ekrana bastır, gelen değeri gör.
5. "AJAX PHP ile uyumludur" ibaresi yanlış. AJAX yönteminde veriler ya salt text ya da xml formatında gelir. yani text üretebilen herhangi bir teknoloji AJAX ile kullanılabilir. php,asp,jsp,vs. fark etmez. hatta sunucu olmadan salt .xml ve .txt dosyaları bile kullanılabilir.
|
|
|
|
|
Logged
|
|
|
|
TechEngineer
Dr.UnknowError
PHP Öğrencisi
Offline
Mesaj Sayısı: 67
Başkasının izinden gidenler, iz bırakamazlar...
|
Bilgimle döverim diyosun yani  Teşekkürler.
|
|
|
|
|
Logged
|
Gitmeyi bilirim,Gitmeye bilirim.
|
|
|
|
 |