Advertisement
Guest User

Code

a guest
Oct 9th, 2014
331
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.71 KB | None | 0 0
  1. Index.php
  2.  
  3. --------------------------------------------------
  4.  
  5. <?php
  6.  
  7. try {
  8.  
  9. $objDb = new PDO('mysql:host=localhost;dbname=cars', 'root', 'password');
  10. $objDb->exec('SET CHARACTER SET utf8');
  11.  
  12. $sql = "SELECT *
  13. FROM `categories`
  14. WHERE `master` = 0";
  15. $statement = $objDb->query($sql);
  16. $list = $statement->fetchAll(PDO::FETCH_ASSOC);
  17.  
  18. } catch(PDOException $e) {
  19. echo 'There was a problem';
  20. }
  21.  
  22. ?>
  23.  
  24. <div id="wrapper">
  25.  
  26. <form action="" method="post">
  27.  
  28. <select name="gender" id="gender" class="update">
  29. <option value="">Select one</option>
  30. <?php if (!empty($list)) { ?>
  31. <?php foreach($list as $row) { ?>
  32. <option value="<?php echo $row['id']; ?>">
  33. <?php echo $row['name']; ?>
  34. </option>
  35. <?php } ?>
  36. <?php } ?>
  37. </select>
  38.  
  39. <select name="category" id="category" class="update"
  40. disabled="disabled">
  41. <option value="">Please choose brand first!</option>
  42. </select>
  43.  
  44.  
  45.  
  46. </form>
  47.  
  48. </div>
  49.  
  50.  
  51. ------------------------------------------
  52.  
  53. Update.php
  54.  
  55. -----------------------------------------
  56.  
  57. <?php
  58. if (!empty($_GET['id']) && !empty($_GET['value'])) {
  59.  
  60. $id = $_GET['id'];
  61. $value = $_GET['value'];
  62.  
  63. try {
  64.  
  65. $objDb = new PDO('mysql:host=localhost;dbname=cars', 'root', 'password');
  66. $objDb->exec('SET CHARACTER SET utf8');
  67.  
  68. $sql = "SELECT *
  69. FROM `categories`
  70. WHERE `master` = ?";
  71. $statement = $objDb->prepare($sql);
  72. $statement->execute(array($value));
  73. $list = $statement->fetchAll(PDO::FETCH_ASSOC);
  74.  
  75. if (!empty($list)) {
  76.  
  77. $out = array('<option value="">Select one</option>');
  78.  
  79. foreach($list as $row) {
  80. $out[] = '<option value="'.$row['id'].'">'.$row['name'].'</option>';
  81. }
  82.  
  83. echo json_encode(array('error' => false, 'list' => implode('', $out)));
  84.  
  85. } else {
  86. echo json_encode(array('error' => true));
  87. }
  88.  
  89. } catch(PDOException $e) {
  90. echo json_encode(array('error' => true));
  91. }
  92.  
  93. } else {
  94. echo json_encode(array('error' => true));
  95. }
  96.  
  97.  
  98.  
  99. --------------------------------------
  100. Core.js
  101. -------------------------------------
  102. var formObject = {
  103. run : function(obj) {
  104. if (obj.val() === '') {
  105. obj.nextAll('.update').html('<option value="">----</option>').attr('disabled', true);
  106. } else {
  107. var id = obj.attr('id');
  108. var v = obj.val();
  109. jQuery.getJSON('/mod/update.php', { id : id, value : v }, function(data) {
  110. if (!data.error) {
  111. obj.next('.update').html(data.list).removeAttr('disabled');
  112. } else {
  113. obj.nextAll('.update').html('<option value="">----</option>').attr('disabled', true);
  114. }
  115. });
  116. }
  117. }
  118. };
  119. $(function() {
  120.  
  121. $('.update').live('change', function() {
  122. formObject.run($(this));
  123. });
  124.  
  125. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement