Advertisement
Guest User

Untitled

a guest
Mar 15th, 2014
340
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.46 KB | None | 0 0
  1. <html>
  2. <body>
  3. <?php
  4. $conn = new PDO('mysql:dbname=test;host=localhost','root', 'root');
  5. $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  6. $asignaturas = $conn->query('SELECT * FROM asignaturas;')->fetchAll();
  7. $nuevaAsignatura = false;
  8. $nuevoAlumno = false;
  9.  
  10. if(!empty($_POST)) {
  11.     try {
  12.         if($_POST['submit'] == 'Alumno') {
  13.             $sql = 'INSERT INTO alumnos (nombre, asignatura_id) values(:nombre, :asignatura)';
  14.             $result = $conn->prepare($sql);
  15.             $result->bindValue(':nombre', $_POST['nombre']);
  16.             $result->bindValue(':asignatura', $_POST['asignatura_id']);
  17.             $result->execute();
  18.             $nuevoAlumno = true;
  19.         } else if ($_POST['submit'] == 'Asignatura') {
  20.             $exists = array_filter($asignaturas, function($asignatura) {
  21.                 return ($asignatura['nombre'] == $_POST['asignatura']);
  22.             });
  23.             if(empty($exists)) {
  24.               $sql = 'INSERT INTO asignaturas (nombre) values(:asignatura)';
  25.               $result = $conn->prepare($sql);
  26.               $result->bindValue(':asignatura', $_POST['asignatura']);
  27.               $result->execute();
  28.               $asignaturas[] = array(
  29.                   'id' => $conn->lastInsertId(),
  30.                   'nombre' => $_POST['asignatura']
  31.               );
  32.               $nuevaAsignatura = true;
  33.           }
  34.         }
  35.     } catch (PDOException $e) {
  36.         echo '<p>Exception: ' . $e->getMessage() . '</p>';
  37.         exit;
  38.     }
  39. }
  40.  
  41. if($nuevaAsignatura) {
  42.     echo '<p>Nueva asignatura insertada</p>';
  43. }
  44. if($nuevoAlumno) {
  45.     echo '<p>Nuevo alumno insertado</p>';
  46. } else {
  47. ?>
  48. <form action="" method="post" accept-charset="utf-8">
  49.     <label for="nombre">Nombre</label>
  50.     <input type="text" name="nombre" value="" id="nombre">
  51.     <select name="asignatura_id" id="asignatura_id">
  52.         <?php
  53.         foreach($asignaturas as $asignatura) {
  54.             $selected = (isset($_POST['asignatura']) && ($asignatura['nombre'] == $_POST['asignatura']))? 'selected' : '';
  55.             echo '<option value="' . $asignatura['id'] . '" ' . $selected . '>' . $asignatura['nombre'] . '</option>';
  56.         }
  57.         ?>
  58.     </select>
  59.     <p><input type="submit" value="Alumno" name="submit"></p>
  60.  
  61.     <label for="asignatura">Asignatura</label>
  62.     <input type="text" name="asignatura" value="" id="asignatura">
  63.     <p><input type="submit" value="Asignatura" name="submit"></p>
  64. </form>
  65. <?php
  66. }
  67. ?>
  68. </body>
  69. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement