B
blankito1998
Beta
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
$quimids = mysqli_query($conexion, "SELECT id FROM posters WHERE (photo LIKE '%.mp4%' OR photo2 LIKE '%.mp4%' OR photo3 LIKE '%.mp4%' OR photo4 LIKE '%.mp4%' OR photo5 LIKE '%.mp4%' OR photo6 LIKE '%.mp4%' OR photo7 LIKE '%.mp4%' OR photo8 LIKE '%.mp4%' OR photo9 LIKE '%.mp4%' OR photo10 LIKE '%.mp4%' OR photo11 LIKE '%.mp4%' OR photo12 LIKE '%.mp4%' OR photo13 LIKE '%.mp4%' OR photo14 LIKE '%.mp4%' OR photo15 LIKE '%.mp4%' OR photo16 LIKE '%.mp4%' OR photo17 LIKE '%.mp4%' OR photo18 LIKE '%.mp4%' OR photo19 LIKE '%.mp4%' OR photo20 LIKE '%.mp4%')");Si solo te muestra losidpostque están enviewpost, hay que asegurarse de que la lógica de comparación esté configurada correctamente. Necesitas asegurarte de que estás capturando correctamente los IDs de los posters que deberían estar disponibles, y luego compararlos con los que ya se han visualizado.
Aquí hay un ejemplo más claro:
### Pasos para Capturar los IDs de Posters Faltantes
1. Asegúrate de Capturar Todos los IDs de Posters: Necesitas tener una lista de todos los IDs de posters en lugar de solo los que están enviewpost.
2. Compara con el Array de Posters: Compara estos IDs con los que ya han sido visualizados.
Aquí te dejo un código revisado que refleja estos pasos:
PHP:// Consulta de los IDs de los posters $quimids = mysqli_query($conexion, "SELECT id FROM posters WHERE (photo LIKE '%.mp4%' OR photo2 LIKE '%.mp4%' OR photo3 LIKE '%.mp4%' OR photo4 LIKE '%.mp4%' OR photo5 LIKE '%.mp4%' OR photo6 LIKE '%.mp4%' OR photo7 LIKE '%.mp4%' OR photo8 LIKE '%.mp4%' OR photo9 LIKE '%.mp4%' OR photo10 LIKE '%.mp4%' OR photo11 LIKE '%.mp4%' OR photo12 LIKE '%.mp4%' OR photo13 LIKE '%.mp4%' OR photo14 LIKE '%.mp4%' OR photo15 LIKE '%.mp4%' OR photo16 LIKE '%.mp4%' OR photo17 LIKE '%.mp4%' OR photo18 LIKE '%.mp4%' OR photo19 LIKE '%.mp4%' OR photo20 LIKE '%.mp4%')"); $allPostIds = []; while ($posterRow = mysqli_fetch_assoc($quimids)) { $allPostIds[] = $posterRow['id']; // Captura todos los IDs de posters } // Ahora que tienes todos los IDs de posters, calcula los que están en viewpost $quimy = mysqli_query($conexion, "SELECT * FROM viewpost WHERE users LIKE '%," . $id2 . ",%' ORDER BY id DESC"); $profitaer = []; while ($filo = mysqli_fetch_assoc($quimy)) { if (isset($filo['idpost'])) { $profitaer[] = $filo['idpost']; $photo = $filo['photo']; // Puedes usarlo esta variable si la necesitas } } // Infle los arrays $profitaerArray = array_filter($profitaer); $allPostIdsArray = array_filter($allPostIds); // Calcula los IDs faltantes $missingItems = array_diff($allPostIdsArray, $profitaerArray); // Muestra los IDs de posters faltantes if (!empty($missingItems)) { echo 'Faltan los siguientes ids de posters: '; echo implode(', ', $missingItems); // Une los ids faltantes en una cadena } else { echo 'No faltan ids de posters.'; }
### Explicación de los Cambios
1. Consulta de Todos los Posters: Primero, se realiza una consulta a la tablaposterspara obtener todos los IDs disponibles.
2. Comparación Correcta: Luego, almacenas en$allPostIdstodos los IDs de posters y, después, los comparas con los IDs deviewpostusandoarray_diff.
3. Mostrar Resultados: Finalmente, si hay IDs faltantes, los muestra.
Con esta lógica, deberías poder ver claramente cuáles son los IDs de posters que están faltando y que no se han visualizado. Si necesitas más ayuda o ajustes, ¡no dudes en preguntar!
$allPostIds = [];
while ($posterRow = mysqli_fetch_assoc($quimids)) {
$allPostIds[] = $posterRow['id']; // Captura todos los IDs de posters
}
// Ahora que tienes todos los IDs de posters, calcula los que están en viewpost
$quimy = mysqli_query($conexion, "SELECT * FROM viewpost WHERE users LIKE '%," . $id2 . ",%' ORDER BY id DESC");
$profitaer = [];
while ($filo = mysqli_fetch_assoc($quimy)) {
if (isset($filo['idpost'])) {
if(isset($filo['id'])){
if($photo == $filo['photo'] || $photo == $filo['photo2'] || $photo == $filo['photo3'] || $photo == $filo['photo4'] || $photo == $filo['photo5'] || $photo == $filo['photo6'] || $photo == $filo['photo7'] || $photo == $filo['photo8'] || $photo == $filo['photo9'] || $photo == $filo['photo10'] || $photo == $filo['photo11'] || $photo == $filo['photo12'] || $photo == $filo['photo13'] || $photo == $filo['photo14'] || $photo == $filo['photo15'] || $photo == $filo['photo16'] || $photo == $filo['photo17'] || $photo == $filo['photo18'] || $photo == $filo['photo19'] || $photo == $filo['photo20']){
// haz que detecte si falta photo, photo2, photo3 con ese id
$profitaer[] = $filo['idpost'];
$photo = $filo['photo']; // Puedes usarlo esta variable si la necesitas
}
}
}
}
// Infle los arrays
$profitaerArray = array_filter($profitaer);
$allPostIdsArray = array_filter($allPostIds);
// Calcula los IDs faltantes
$missingItems = array_diff($allPostIdsArray, $profitaerArray);
// Muestra los IDs de posters faltantes
if (!empty($missingItems)) {
echo 'Faltan el siguiente photo con id de posters: ';
echo implode(', ', $missingItems); // Une los ids faltantes en una cadena
} else {
echo 'No faltan ids de posters.';
}
hazlo asi que detecte que photo falta con el id


