Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Creare pagine in automatico da database (modrewrite)

    Ciao a tutti,

    devo simulare un modrewrite su un database che ho già, mi spiego meglio:

    ho un database con circa seicento campi, e vorrei creare uno script che mi generi in automatico un file per ogni record e come nome del file il nome del campo url e come contenuto questo qui:

    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set Documento = FSO.OpenTextFile(Server.MapPath("/cartella/") & "\" & ConvertiTitoloInNomeScript(FTitolo, IDArticolo), 2, True)
    ContenutoFile = ""
    ContenutoFile = ContenutoFile & "<" & "%" & vbCrLf
    ContenutoFile = ContenutoFile & "VarID = "& IDArticolo &"" & vbCrLf
    ContenutoFile = ContenutoFile & "%" & ">" & vbCrLf
    ContenutoFile = ContenutoFile & ""
    Documento.Write ContenutoFile

    è possibile farlo?

    Ciao e grazie a chi può aiutarmi.

    Ciao ciao

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Si, qual'è il problema?

    Roby

  3. #3
    Ciao Roby,

    devo creare per ogni record una pagina asp che abbia come nome il nome del campo url e come contenuto il seguente:

    <%
    VarlinkID = linkid
    %>

    spero di essere stato chiaro. Ciao e grazie per l'aiuto Andrea.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ok, ma il tuo script mi sembra ok.
    Basta metterlo all'interno di un ciclo Do while/ Loop che cicli tutti i record estratti.

    Roby

  5. #5
    il problema è che io non so scrivere codice pulito, e l'esempio che ho postato è tratto da un esempio di modrewrite tratto da un tutiorial.

    questa è la mia prova:

    <% Dim Conn, StrConn

    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = "& Server.MapPath("../fpdb/prova.mdb") &";"


    SQL = " INSERT INTO links (linkid, url) VALUES ('"& Replace(url, "'", "''") &"', '"& Replace(FTesto, "'", "''") &"') "
    Set RS = Server.CreateObject("ADODB.Recordset")
    RS.Open SQL, Conn, 1, 3
    Set RS = Nothing

    SQL = " SELECT TOP 1 ID FROM Tabella ORDER BY Tabella.ID DESC "
    Set RS = Server.CreateObject("ADODB.Recordset")
    RS.Open SQL, Conn, 1, 3
    If NOT RS.EOF Then
    RS.MoveFirst
    IDArticolo = RS("ID")
    Else
    IDArticolo = 0
    End If
    Set RS = Nothing
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set Documento = FSO.OpenTextFile(Server.MapPath("/public/") & "\" & url, True)
    ContenutoFile = ""
    ContenutoFile = ContenutoFile & "<" & "%" & vbCrLf
    ContenutoFile = ContenutoFile & "VarID = "& linkid &"" & vbCrLf
    ContenutoFile = ContenutoFile & "%" & ">" & vbCrLf
    ContenutoFile = ContenutoFile & ""
    Documento.Write ContenutoFile
    Set FSO = Nothing

    %>

    ci va aggiunto il ciclo e corretto la stringa, poi dovrei lanciare il file e dovrebbe crearmi tante pagine quante i campi del database.

    Ma come faccio?

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ma questa parte a cosa serve?
    codice:
    SQL = " INSERT INTO links (linkid, url) VALUES ('"& Replace(url, "'", "''") &"', '"& Replace(FTesto, "'", "''") &"') "
    Set RS = Server.CreateObject("ADODB.Recordset")
    RS.Open SQL, Conn, 1, 3
    Set RS = Nothing
    Roby

  7. #7


    a niente perchè è sbagliata, ma non so costriuirla per estrarre tutti i record e creare un ciclo che mi crei in automatico le pagine.


  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    <% Dim Conn, StrConn
    
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = "& Server.MapPath("../fpdb/prova.mdb") &";"
    
    SQL = " SELECT * FROM Tabella ORDER BY Tabella.ID DESC "
    Set RS = Server.CreateObject("ADODB.Recordset")
    RS.Open SQL, Conn, 1, 3
    If NOT RS.EOF Then
    do while not rs.eof
    linkid = RS("ID")
    ulr = RS("url") 
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set Documento = FSO.OpenTextFile(Server.MapPath("/public/") & "\" & url, True)
    ContenutoFile = ""
    ContenutoFile = ContenutoFile & "<" & "%" & vbCrLf
    ContenutoFile = ContenutoFile & "VarID = "& linkid &"" & vbCrLf
    ContenutoFile = ContenutoFile & "%" & ">" & vbCrLf
    ContenutoFile = ContenutoFile & ""
    Documento.Write ContenutoFile
    Set FSO = Nothing
    rs.MoveNext
    Loop
    end if
    rs.Close
    set rs = nothing
    %>

    In neretto i nomi dei campi che non conosco. Controllali.

    Roby

  9. #9
    Ciao Roby,

    ho fatto una prova cosi:

    codice:
    <% Dim Conn, StrConn
    
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = "& Server.MapPath("db.mdb") &";"
    
    SQL = " SELECT * FROM Tabella ORDER BY Tabella.ID DESC "
    Set RS = Server.CreateObject("ADODB.Recordset")
    RS.Open SQL, Conn, 1, 3
    If NOT RS.EOF Then
    do while not rs.eof
    linkid = RS("ID")
    ulr = RS("titolo") 
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set Documento = FSO.OpenTextFile(Server.MapPath("/isoladelba_ca/rewrite/public/") & "\" & titolo, True)
    ContenutoFile = ""
    ContenutoFile = ContenutoFile & "<" & "%" & vbCrLf
    ContenutoFile = ContenutoFile & "VarlinkID = "& ID &"" & vbCrLf
    ContenutoFile = ContenutoFile & "%" & ">" & vbCrLf
    ContenutoFile = ContenutoFile & ""
    Documento.Write ContenutoFile
    Set FSO = Nothing
    rs.MoveNext
    Loop
    end if
    rs.Close
    set rs = nothing
    %>
    mi da questo errore:
    Tipo di errore:
    Errore di run-time di Microsoft VBScript (0x800A0005)
    Chiamata di routine o argomento non validi
    /isoladelba_ca/rewrite/test.asp, line 14

  10. #10

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.