Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 48
  1. #1

    [VB6] Salvataggio Variabile con contenuto HTML in mysql

    Ciao a tutti...

    Sto provando a salvare una variabile all'interno di un database ma continuo ad avere lo stesso problema.

    Vi descrivo le scenario

    variabile txt in vb6 dichiarata come string, contenuto HTML

    txt = "<html><head><title>Prova</title></head></html>"

    salvo la variabile nel campo mysql

    risultato:

    < html > < head > < title > prova < /title > < /head > < /html >


    Questo rende il codice html non interpretabile (quando lo riprendo dal DB).

    Sapete darmi spiegazione di questo?
    PIERCHI

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2014
    residenza
    Vicenza
    Messaggi
    318
    Devi mostrare più codice.
    Ad esempio quali istruzioni usi per salvare la variabile nel database.
    Se invece di codice HTML la variabile contiene del testo normale, funziona ???

    Sergio
    Ultima modifica di SirJo; 03-04-2014 a 22:54

  3. #3
    Quote Originariamente inviata da SirJo Visualizza il messaggio
    Devi mostrare più codice.
    Ad esempio quali istruzioni usi per salvare la variabile nel database.
    Se invece di codice HTML la variabile contiene del testo normale, funziona ???

    Sergio
    chiedo scusa, io ho abbozzato del codice che ho scritto adesso..

    Appena sono sul pc dove programmo, copio un pezzo di codice!
    PIERCHI

  4. #4
    codice:
    Private Sub Salva(fine)
    Dim query As String
    Dim pier As String
    pier = "<ciao a tutti><uff>"
        If (conn.State = adStateOpen) Then 'Esegue solo se si è connessi
            query = "INSERT INTO ordini (id, dataora, html) VALUES ('', '" _
            & Format(Now, "yyyy-mm-dd") & " " & Hour(Now) & ":" & Minute(Now) & ":" & Second(Now) & "', '" _
            & pier & "')"
            conn.Execute query
        End If
    End Sub
    ho provato anche così al posto di html una frase a caso, ma non cambia nulla O_o
    PIERCHI

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2014
    residenza
    Vicenza
    Messaggi
    318
    Il problema può essere nella formattazione della data oppure nel campo ID.
    Se il campo ID è un campo AUTOINCREMENT non lo devi proprio specificare, per cui prova a toglierlo, e se ancora non funziona prova a formattare la data in modo diverso, ad esempio prova questo:
    codice:
    query = "INSERT INTO ordini (dataora, html) VALUES ('" _
    & Format(Now, "yyyy\-mm\-dd hh\:mm\:ss") & "', '" _
    & pier & "')"
    Sergio

  6. #6
    adesso faccio delle prove come dici tu.

    Sull'MSDN ho trovato anche questo
    codice:
        Set hElm = WebBrowser(0).Document.All.tags("html").Item(0)
        htmltext = hElm.outerHTML
    funziona egregiamente, ma il risultato è sempre questo:
    codice:
     < HTML > < HEAD > < /HEAD > 
     < BODY > 
     < CENTER > 
     < TABLE border = 0 cellSpacing = 0 cellPadding = 0 width = "90%" >
    PIERCHI

  7. #7
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    una cosa che forse hai già provato:

    una query manuale sia da codice che dal tuo sw per mysql?

    quindi senza parametri una stringa tipo "INSERT INTO (campo1, campo2) VALUES(valore1,valore2)";

    lo stesso dal sw di gestione mysql

    ma il codice suddiviso lo trovi nel vb o nel database?
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  8. #8
    Ciao, ho formattato la data nel modo in cui mi hai detto, così è più chiara :P
    Ho eliminato il campo autoincrement, ma il problema sul campo html l'ho comunque.

    Posso fare un replace, quando riprendo l'html, ma così facendo occupo il doppio dello spazio nel database.
    Già il massimo dei caratteri del varchar (accettato da vb) è circa 30000...
    PIERCHI

  9. #9
    Quote Originariamente inviata da ciro78 Visualizza il messaggio
    una cosa che forse hai già provato:

    una query manuale sia da codice che dal tuo sw per mysql?

    quindi senza parametri una stringa tipo "INSERT INTO (campo1, campo2) VALUES(valore1,valore2)";

    lo stesso dal sw di gestione mysql

    ma il codice suddiviso lo trovi nel vb o nel database?
    il codice suddiviso lo vedo dentro al database tramite phpmyadmin.

    Ho già provato a fare una stringa così solo con i due campi ed è uguale.

    Da phpmyadmin non ho problemi invece. Anche se sono due cose completamente diverse...
    PIERCHI

  10. #10
    Ma perché vi ostinate ad inserire i dati direttamente nelle query, facendovi venire mille mal di fegato tra escaping, formati delle date, potenziali SQL injection e menate accessorie? Inizia a rimpiazzare quella query con una query parametrica, poi ne riparliamo.
    Amaro C++, il gusto pieno dell'undefined behavior.

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.