Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Passei três dias quebrando a cabeça para resolver a seguinte situação:
Tenho um arquivo usr.php que abre um formulário. O número de linhas (itens/produtos) que aparece para cada usuário é definido previamente em uma tabela, junto com outras informações do usuário.
Como inicialmente cada usuário poderia preencher apenas a lista de produtos em andamento, eu tinha uma tabela pra cada um, com o número de inserções já definidas. Ao salvar, na realidade o usuário apenas fazia um UPDATE nas linhas do banco.
Pra exibir os campos de cada usuário (para que ele editasse até a data do envio final) eu usava o for($i=1; $i<=$qtd; $i++).
Funcionou bem por bastante tempo. Mas agora, estou programando para a edição de múltiplos trabalhos.
Assim, no TRABALHO01, o usuário edita 20 itens. No TRABALHO02, outros 20.
Parece simples, mas estou usando apenas uma tabela para cada usuário. Então os itens são armazenados em sequência. Na primeira vez que o usuário edita o trabalho, ele faz um INSERT. Na segnda, faz um UPDATE. Normal.
Meu SQL fica assim
$sql = "SELECT * FROM 'users' WHERE TRABALHO='trabalho01' AND ID='$i'";
E aí mora o problema: como uso o $i++ no for() esse $sql só funciona nos primeiros 20 produtos
Já que o id do trabalho 02 começa no 21.
Então fiz assim:
$sql_define_inicio = "SELECT * FROM 'users' WHERE TRABALHO='trabalho01' LIMIT 1";
(...)
$inicio = $row['ID'];
$fim = $inicio+$qtd-1;
No for() mudei pra $i=$inicio; $i<=fim; $i++
Mas NÃO FUNCIONA!!!!
Na verdade, funciona parcialmente, mas só que salva no banco a partir da linha 2.
No arquivo save.php possui um sistema semelhante.
Abraçoooo galeraaa
Carregando comentários...