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

    SqLite - problemi con UPDATE

    Scusate....
    provo a crosspostare la richiesta in quanto nel forum PHP non riescono a rispondermi...


    [preambolo]
    solito tentativo rdi programma di contabilità molto semplice....
    [/fine preambolo]

    Codice PHP:
    [main]
    $q1="UPDATE pdc SET Totale_e='0', Totale_u='0' WHERE id > 0";
    GeneraRisultatoQuerry("$q1");

    $q1='SELECT Conto, SUM(Entrata), SUM(Uscita) FROM primanota group by Conto';
    $result2=GeneraRisultatoQuerry("$q1");

    foreach (
    $result2 as $value2 ){
    $q2"UPDATE pdc SET Totale_e='$value2[1]', Totale_u='$value2[2]' WHERE Numero ='$value2[0]'";
    echo 
    "
     
    $q2";

    --> [
    b]GeneraRisultatoQuerry($q2);[/b]

    }

    [/ 
    main.php]


    [function.
    php]
    function 
    GeneraRisultatoQuerry($query) {
    $query=sanitize($query,'PARANOID');

    global 
    $db_1;

    $apri_db "sqlite:$db_1";
    $db = new PDO($apri_db);
    $result $db->query("$query");
    $db NULL;
    echo 
    "$query - $db_ - 
    "
    ;
    return 
    $result;
    }

    [/function.
    php
    se metto in remark la stringa // GeneraRisultatoQuerry($q2);
    funziona tutto perfettamente.. ovvermo mi stampa a video le query corrette che se passate attraverso phpliteadmin.php funzioano perfettamente e danno i risultati corretti

    quando invece decommento la riga il PC si impalla di brutto,
    viene creato un file DATABES.db-journal

    e non ho nessun ettetto sul database PDC (piano dei conti)


    HELLLPPPPP
    Flavio

  2. #2
    i valori numerici non vanno tra apici

  3. #3
    i campi impostati in SqLite sono tutti formato TEXT o BLOB anche se contengono in realtà numeri.

    l'opzione SUM sembra funzionare correettamente (sembra.. no ho fatto la prova di conto a manina)

    quello che è strano è che le prime istruzioni
    Codice PHP:
    $q1="UPDATE pdc SET Totale_e='0', Totale_u='0' WHERE id > 0";
    GeneraRisultatoQuerry("$q1");

    $q1='SELECT Conto, SUM(Entrata), SUM(Uscita) FROM primanota group by Conto';
    $result2=GeneraRisultatoQuerry("$q1"); 
    funzionano perfettamente.
    cioè la prima mi azzera qualunque valore nelle colonne Totale_e, Totale_u della tabella pdc

    la seconda funzione sembra dare risultato corretto

    Codice PHP:
    foreach ($result2 as $value2 ){
    $q2"UPDATE pdc SET Totale_e='$value2[1]', Totale_u='$value2[2]' WHERE Numero ='$value2[0]'";
    echo 
    "
     
    $q2"

    fino a qui' funziona tutto perfettamente...

    se prenndo ciascuna riga prodotta e la faccio processare a PHPLiteAdmin (l'interfaccia simi -phpMyAdmin per sqlite) Funziona tutto perfettamente

    in problema è quando facco fare alla procedura l'operazione ricorsiva

    Codice PHP:
    foreach ($result2 as $value2 ){
    $q2"UPDATE pdc SET Totale_e='$value2[1]', Totale_u='$value2[2]' WHERE Numero ='$value2[0]'";
    echo 
    "
     
    $q2";
    GeneraRisultatoQuerry($q2);

    Che mi si impalla tutto !!!
    mi genera un file DATABES.db-journal

    e quando il file sparisce ed il sistema mi si disimpalla..... nessun dato viene realmente variato !!!!


    FLavio

  4. #4
    i campi impostati in SqLite sono tutti formato TEXT o BLOB anche se contengono in realtà numeri.

    l'opzione SUM sembra funzionare correettamente (sembra.. no ho fatto la prova di conto a manina)

    quello che è strano è che le prime istruzioni
    Codice PHP:
    $q1="UPDATE pdc SET Totale_e='0', Totale_u='0' WHERE id > 0";
    GeneraRisultatoQuerry("$q1");

    $q1='SELECT Conto, SUM(Entrata), SUM(Uscita) FROM primanota group by Conto';
    $result2=GeneraRisultatoQuerry("$q1"); 
    funzionano perfettamente.
    cioè la prima mi azzera qualunque valore nelle colonne Totale_e, Totale_u della tabella pdc

    la seconda funzione sembra dare risultato corretto

    Codice PHP:
    foreach ($result2 as $value2 ){
    $q2"UPDATE pdc SET Totale_e='$value2[1]', Totale_u='$value2[2]' WHERE Numero ='$value2[0]'";
    echo 
    "
     
    $q2"

    fino a qui' funziona tutto perfettamente...

    se prenndo ciascuna riga prodotta e la faccio processare a PHPLiteAdmin (l'interfaccia simi -phpMyAdmin per sqlite) Funziona tutto perfettamente

    in problema è quando facco fare alla procedura l'operazione ricorsiva

    Codice PHP:
    foreach ($result2 as $value2 ){
    $q2"UPDATE pdc SET Totale_e='$value2[1]', Totale_u='$value2[2]' WHERE Numero ='$value2[0]'";
    echo 
    "
     
    $q2";
    GeneraRisultatoQuerry($q2);

    Che mi si impalla tutto !!!
    mi genera un file DATABES.db-journal

    e quando il file sparisce ed il sistema mi si disimpalla..... nessun dato viene realmente variato !!!!


    FLavio

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.