CRUD PHP does not enter data

0

I have these values inside a case:

case 'upgrade':
        $alm->__SET('acronimo', $_REQUEST['acro']);
        $alm->__SET('cantidad', $_REQUEST['cantidad']); 
        $alm->__SET('compania', $_REQUEST['comp']);

        $model->Actualizar1($alm);

        break;

    case 'registrar':
        $alm->__SET('acronimo', $_REQUEST['acro']);
        $alm->__SET('cantidad', $_REQUEST['cantidad']); 
        $alm->__SET('compania', $_REQUEST['comp']);

        $model->Registrar($alm);
        break;

And this is the form:

<table>
       <tr>
           <th style="text-align:left;">Acronimo</th>
              <td colspan="2">
              <select class="form-control" id="acro" name="acro" required>
                     <option value="<?php echo isset($obj_categoria) ? $obj_categoria->__GET('acronimo') : ''; ?>"><?php echo isset($obj_categoria) ? $obj_categoria->__GET('acronimo') : ''; ?> </option>    
                     <?php
                     $pdo = new PDO('mysql:host=localhost;dbname=final', 'root', '');
                     $pdo->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'");
                     $stmt = $pdo->prepare('Select * from articulos order by acronimo');
                     $stmt->execute();
                     while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
                     echo '<option name="' . ($row['acronimo']) . '">' . ( $row['acronimo'] . '(' . $row['descripcion'] .')' ) . '</option>';
                     }
                     ?>
             </select>
             </td>
        </tr>
        <tr>
            <th style="text-align:left;">Cantidad</th>
               <td colspan="2">
                   <input class="form-control version" type="text" name="cantidad" id="cantidad" value="<?php echo isset($obj_categoria) ? $obj_categoria->__GET('cantidad') : ''; ?>" style="width:100%;" required />
               </td>
        </tr>
        <tr>
           <th style="text-align:left;">Compañia</th>
              <td colspan="2">
              <select class="form-control" id="comp" name="comp" required>
              <option value="<?php echo isset($obj_categoria) ? $obj_categoria->__GET('compania') : ''; ?>"><?php echo isset($obj_categoria) ? $obj_categoria->__GET('compania') : ''; ?> </option>    
              <?php
              $pdo = new PDO('mysql:host=localhost;dbname=final', 'root', '');
               $pdo->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'");
               $stmt = $pdo->prepare('Select * from compania order by acronimo');
               $stmt->execute();
               while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
               echo '<option name="' . ($row['acronimo']) . '">' . ( $row['acronimo'] . '(' . $row['nombre'] .')' ) . '</option>';
               }
               ?>
               </select>
               </td>
               <td><input type="hidden" name="acronimo" id="acronimo" value="<?php echo isset($obj_categoria) ? $obj_categoria->__GET('acronimo') : ''; ?>" style="width:100%;" required /></td>
               <td><input type="hidden" name="compania" id="compania" value="<?php echo isset($obj_categoria) ? $obj_categoria->__GET('compania') : ''; ?>" style="width:100%;" required /></td>
          </tr>
          <tr>
              <td colspan="2"><input type="submit" class="boton" value="Guardar" /></td>
              <td colspan="2"> 
                 <a href="index.php">
                 <input type="reset" class="button_active" value="Reset" />
                 </a>
                 </td>
                 <td colspan="2"> 
                 <a href="index.php">
                 <input type="button" onclick="limpiarFormulario()" value="Limpiar Edición">
                  </a>
              </td>
          </tr>
 </table>

And I do not see exactly where it fails, I know that in the INSERT statements of the other file, because they are used with another form and work perfectly, it fails here in the form but I do not know where

The public function:

public function Registrar(Categoria $data) {
    try {
        $sql = "INSERT INTO stock (acronimo,cantidad,compania)
            VALUES (?, ?, ?)";

        $this->pdo->prepare($sql)->execute(array(
                            $data->__GET('acronimo'),
                            $data->__GET('cantidad'),
                            $data->__GET('compania')
                        )
        );
    } catch (Exception $e) {
        die($e->getMessage());
    }
}
public function Actualizar1(Categoria $data) {
    try {
        $sql = "INSERT INTO stock (acronimo,cantidad,compania)
            VALUES (?, ?, ?)";

        $this->pdo->prepare($sql)->execute(array(
                            $data->__GET('acronimo'),
                            $data->__GET('cantidad'),
                            $data->__GET('compania')
                        )
        );
    } catch (Exception $e) {
        die($e->getMessage());
    }
}
    
asked by Alberto Cepero de Andrés 15.06.2017 в 14:09
source

0 answers