esto puede ser una pregunta simple, pero estoy tratando de entender cómo resolverlo. Tengo un formulario que permite al usuario seleccionar "personal" o "todo" personal para asignarlo a un trabajo.DOP fetchAll matriz a una sola dimensión
Si se selecciona la opción personalizada, el usuario selecciona el personal haciendo clic en cada casilla de verificación, luego las inserto en un trabajo mesa. Esto produce la matriz a continuación (3, 1, 10 son el personal IDs)
Array
(
[0] => 3
[1] => 1
[2] => 10
)
Si se selecciona "todo el personal", lo primero que consultar una instrucción de selección para obtener todo el personal de identificación de de la mesa de los profesores, y luego inserte estos en la tabla de trabajos de la misma forma que en el ejemplo anterior. Sin embargo, esto produce la matriz:
Array
(
[0] => Array
(
[staffID] => 1
[0] => 1
)
[1] => Array
(
[staffID] => 23
[0] => 23
)
[2] => Array
(
[staffID] => 26
[0] => 26
)
[3] => Array
(
[staffID] => 29
[0] => 29
)
)
¿Cómo puedo convertir la matriz de arriba a la primera matriz que se muestra?
estoy usando el código de abajo para consultar la base de datos para obtener todo el personal de identificación y después de la inserción de ellos.
$select = $db->prepare("SELECT staffID FROM staff");
if($select->execute())
{
$staff = $select->fetchAll();
}
for($i = 0; $i<count($staff); $i++)
{
$staffStmt = $db->prepare("INSERT INTO staffJobs (jobID, userID) VALUES (:jobID, :staffID)");
$staffStmt->bindParam(':jobID', $jobID, PDO::PARAM_INT);
$staffStmt->bindParam(':staffID', $staff[$i], PDO::PARAM_INT);
$staffStmt->execute();
}
La primera matriz se inserta bien, sin embargo, la última matriz inserta ceros para el ID de personal.
¿Alguna sugerencia?
Gracias =).
Gracias perfecto mucho =) – Elliott
¡Gracias! Su enlace me ayudó a encontrar la manera de buscar un 'matriz indexada-staffID':' $ Seleccionar-> fetchAll (PDO :: FETCH_COLUMN | PDO :: FETCH_GROUP) '. Cosas geniales – Nico