https://stackoverflow.com/questions/...ields-via-ajax
AJAX'ta gönderilen data'nın içinde gidecek bu islem dediğim değer.
Linkte örneği mevcut.
Ajaxı 2 yerde kullanma sorunu ?
15
●214
- 24-08-2020, 15:21:42Butona mutlaka "value" değeri tanımlayın. value="1" ile olsa olur.Proffice adlı üyeden alıntı: mesajı görüntüle
- 24-08-2020, 15:28:33Üyeliği durduruldu
- 24-08-2020, 15:37:17Formun içerisinde işlemin adını belirtin;
<form action="" id="kullanicibanlama" method="POST" onsubmit="return false"> <input type="hidden" name="kullanici_durum" class="form-control" id="" value="Pasif"> <input type="hidden" name="kullanici_id" value="<?= $kgel['kullanici_id']; ?>"> <!---- inc sayfanızda belirtilen işlemin adı --> <input type="hidden" name="ProcessName" value="BanUser"> <!---- inc sayfanızda belirtilen işlemin adı --> <button class="btn btn-warning" onclick="kullanicibanla();">Banla</button> </form>
Post sayfanızda switch case ile işlemleri kontrol edebilirsiniz.
<?php $ProcessName = isset($_POST['ProcessName']) ? $_POST['ProcessName'] : null; if ($ProcessName != null) : switch ($ProcessName) { case 'BanUser': $kullanici_id = $_POST['kullanici_id']; $kullanicibanla = $db->prepare("UPDATE site_kullanici SET kullanici_id=:id, kullanici_durum=:durum "); $ban = $kullanicibanla->execute(array( 'id' => $kullanici_id, 'durum' => $_POST['kullanici_durum'] )); if ($ban) { echo "ok"; } break; case 'Login': // Code. break; case 'Register': // Code. break; case 'AddUser': // Code. break; } endif;Yalnız bu şekilde post sayfanızda çok fazla kod kalabalığı olur tavsiye etmem, onun yerine ajax adında bir klasör oluşturup işlemlere göre otomatik eşleşen dosya isimleriyle ayrı ayrı dosya oluşturmak daha mantıklı olur
- 24-08-2020, 15:40:28Üyeliği durdurulduçok sağolun hocam teşekkür ederim peki dosya isimleriyle ayrı ayrı dediğiniz konu ile ilgili makale ya da bilgi veren bir link ya da yardım alabileceğim bu konu ile ilgili bir yer var mı nasıl yapabileceğim konusundaMSA adlı üyeden alıntı: mesajı görüntüle
- 24-08-2020, 15:51:43ajax.php adında bir dosya ve ajax adında bir klasör oluşturun. Tüm ajax isteklerini ajax.php adresine yapın.Proffice adlı üyeden alıntı: mesajı görüntüle
ajax.php içeriği;
<?php if (!isset($_SERVER['HTTP_X_REQUESTED_WITH']) || strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest') { header("Content-type: application/json; charset=utf-8"); http_response_code(403); echo json_encode(array( 'HttpStatusCode' => 403, 'ErrorMessage' => 'Access Denied.' ), JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT); exit; } if (!isset($_SERVER['HTTP_REFERER'])) { header("Content-type: application/json; charset=utf-8"); http_response_code(403); echo json_encode(array( 'HttpStatusCode' => 403, 'ErrorMessage' => 'Access Denied.' ), JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT); exit; } $AjaxFile = isset($_POST['ProcessName']) ? $_POST['ProcessName'] : 'blank'; if (!$_POST) { http_response_code(401); exit; } if (!file_exists('./ajax/' . $AjaxFile . '.php')) { http_response_code(401); exit; } require_once './ajax/' . $AjaxFile . '.php';Daha sonra formda ProcessName inputuna hangi değeri verdiyseniz ajax klasörünün altında o isimde bir dosya oluşturun. Örneğin BanUser değerini verdiyseniz BanUser.php dosyasını oluşturun. İstek otomatik olarak o dosyaya gelecektir.
Böylece istekleri çok daha kolay yönetebilirsiniz. - 24-08-2020, 15:54:05Üyeliği durdurulduKralsın teşekkür ederim deneyeceğim hemenMSA adlı üyeden alıntı: mesajı görüntüle

