Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    assegnare ogni tot record elementi array

    Ciao
    Sto facendo una funzione ma mi sono imbattuto in un algoritmo che non riesco a trovare per far in modo di

    aggiornare ogni tot records un campo con un valore di un array.
    ci ho provato ma talmente ho scritto possibili algoritmi mi son fuso e non ne funzionava manco uno tutti

    fuori luogo..
    questo assegna il 1 elemento ai primi 5 records ma per i successivi records non ho più algoritmi in testa
    code:
    Codice PHP:
    for ($i=1;$i<5;$i++) {
      
    $query mysql_query("UPDATE $tbl SET y='" $get_array[1] . "' WHERE id='" $array_id[$i] . "'");
      } 
    se potrebbe servirvi
    ...
    Mi esprimo meglio nel caso non si capisce l'inizio del post:
    In un array di n elementi ho degli elementi numerici
    Voglio per esempio che si inizi che ai primi 5 records va assegnato al campo nome_campo il 1 elemento

    dell'array e poi ai successivi 5 records sempre al campo nome_campo il secondo elemento dell'array e così via

    andando..
    Il 5 è un esempio ma il numero deve variare a seconda delle esigenze..
    Mi son complicato la vita lo so ma io sono fatto così e mi piace imbattermi in cose nuove per imparare.

    Grazie eventualmente
    Ciao

  2. #2
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    proprio difficile assaie...

    Codice PHP:
    $n count($get_array);
    for(
    $j=1;$j<$n;$j++)
       for(
    $i=1;$i<5;$i++) 
          
    $query mysql_query("UPDATE $tbl SET y='" $get_array[$j] . "' WHERE id='" $array_id[$i] . "'"); 
    attenzione che così salti l'elemento zero di $get_array nn so se è voluta come cosa..

    poi.. algoritmo è l'approccio lo pseudo-codice il ragionamento la successione di azioni da intraprendere.. pensa che li usavano anke i babilonesi e allora nn esisteva il php.. forse..

    se potrebbe stanchezza?
    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  3. #3
    non sono esperto in php potrebbero sembrare facili per voi ma sono neofita e per me il php non è così facile in certi casi come questi in quanto son neofita sono riuscito a far in modo di assegnare 2 elementi dell array ai primi 2 gruppi da 5 di records..ma non va più avanti..
    il tuo codice però non funge inserisce ai primi 2 records i 2 elementi dell array

    grazie lo stesso per l'aiuto

  4. #4
    cercherò di trovare un modo, dovrà pur esserci :master:

  5. #5
    Ciao
    Tutto apposto
    Ci son riuscito


    @luke83 grazie ugualmente per l'aiuto

  6. #6
    però ho trovato un bug, se per esempio ho 12 records e per pagina ne voglio 5 assegna i rispettivi valori al 1 gruppo di 5 e al 2 gruppo di 5 ma ai 2 rimanenti non assegna niente. funge solo se per esempio ho 12 records totali e ne ho 4 per pagina, si creano 3 pagine...però non va bene :master: forse quello che voglio io non esiste.però forse si potrebbe fare durante l'inserimento dei records l'assegnamento degli elementi array.
    proverò in altro modo

  7. #7
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    il principio è semplice... due cicli uno che ragga i gruppi l'altro che scorra il singolo gruppo.. nei casi patologici di nn esatta divisibilità devi ricorrere ad una if nel ciclo.. se mandi il codice - come è sempre buona norma - vediamo che si può fare... anke se resto scettico del mio codice.. nn vedo come sia possibile che nn cicli 5 volte visto che glielo diciamo esplicitamente... :master:

    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  8. #8
    ciao
    Si ero riuscito proprio mettendo una if infatti, però questo codice funge solo in una detrminata circostanza e non va bene

    Ecco il codice :
    Codice PHP:
    $count $records_for_page;
    $loop $i;
    $j 1;
    for (
    $i=1;$i<$loop;$i++) {
        
    $query mysql_query("UPDATE $tbl SET y='" $get_array[$j] . "' WHERE id='" $array_id[$i] . "'");
        if (
    $i==$count) {
        
    $query mysql_query("UPDATE $tbl SET y='" $get_array[$j] . "' WHERE id='" $array_id[$i] . "'");
        
    $j++;
        
    $count $count $records_for_page;
        }

    non va proprio ci sono quasi ma se non trova altri 5 per esempio i rimanenti records rimangono a valore nullo.

    ciao
    vedete che si può fare io più di così non riesco a fare non son esperto in queste cose

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.