Pergunta

Eu tenho uma pergunta provavelmente coxo, mas isso me deixou preso, eu tenho a consulta A DB

 $query_Recordset10 = "SELECT * FROM products 
  WHERE razdel='mix' AND ID='$ID+1' AND litraj='$litri' ORDER BY ID ASC";
$Recordset10 = mysql_query($query_Recordset10, $victor) or die(mysql_error());
$row_Recordset10 = mysql_fetch_array($Recordset10);
$totalRows_Recordset10 = mysql_num_rows($Recordset10);

Esta é a consulta do próximo produto da linha com base no ID do produto atual que está na página.

Mas se o próximo produto que corresponder aos critérios da consulta tiver 2 ou mais IDs à ​​frente, meu ciclo será interrompido.Existe uma maneira de pular essas linhas e obter o próximo ID que corresponda aos critérios.

Muito obrigado.

Foi útil?

Solução

Mude sua consulta para isto:

$query_Recordset10 = "SELECT * FROM products 
    WHERE razdel='mix' AND ID > '$ID' AND litraj='$litri' ORDER BY ID ASC LIMIT 1";

Portanto, você ainda receberá apenas 1 linha retornada (se houver algo para retornar), mas retornará a próxima linha (de acordo com ORDER BY ID ASC) versus (potencialmente) a linha com um ID incremental.

Outras dicas

SELECT * FROM products
WHERE razdel='mix' AND ID > $ID AND litraj='$litri' ORDER BY ID ASC";

PROBLEMA RESOLVIDO.Eu ainda tenho muito a aprender.

SELECT * FROM products WHERE razdel='mix' AND ID>'$ID' AND litraj='$litri' ORDER BY ID ASC LIMIT 1

esta é a linha correta, mas meu erro foi como o $ID é gerado.

Obrigado a todos.

Use foreach para fazer um loop em um array em vez de tentar acessar por índices (se você estiver buscando todos os valores):

foreach ($records as $record) {
}

em vez de

for ($i = 0; $i < count($records); $i++) {
}

ou

$i = 0;
while ($i < count($records)) {

    $i++;
}

ou

$i = 0;
do {

} while (++$i < count($records));

Use esta consulta:

SELECT * FROM products WHERE razdel='mix' AND ID>$ID AND litraj='$litri' ORDER BY ID ASC LIMIT 1

Isso lhe dará o próximo elemento após aquele com ID de $ID.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top