Disattivare l'html - o meglio ancora l'invio di img in un form

  • Creatore Discussione Creatore Discussione alex007
  • Data di inizio Data di inizio

alex007

Utente Attivo
10 Lug 2006
32
0
0
Un carissimo amico che ho ritrovato qui dentro a fare il moderatore "Il Grande Davide", che sta uccidendo il golia della rete (battuta umoristica cosi cosi. . non so se vi è piaciuta) ma era mio dovere farla, mi ha fornito delle soluzioni per realizzare un forum che a tutt'oggi funziona.
Nella pagina newpost.asp devo fare in modo che non vengano inserite delle immagini o script su percorso scritto, e quindi residenti in locale su altri server.
Lo script usato nella pagina è il seguente --->


<% If Not hitDiscuss.EOF Or Not hitDiscuss.BOF Then
testo=(hitDiscuss.Fields.Item("Descrizione").Value)
cerca="[/Quote]"
lung=len(testo)
contr=InStrRev(testo,cerca)

if contr <> 0 then
risul=mid(testo,contr,lung)

a=Replace(risul,"
","")
b=Replace(a,"
","")
risul=b
else
risul=mid(testo,1,lung)

a=Replace(risul,"
","")
b=Replace(a,"
","")
risul=b
end if
%>

<%=risul%>
<%end if%>
<% If Not ThisPost.EOF Or Not ThisPost.BOF Then
testo=(ThisPost.Fields.Item("DescrizioneP").Value)
cerca="[/Quote]"
lung=len(testo)
contr=InStrRev(testo,cerca)
if contr <> 0 then
risul=mid(testo,contr,lung)
a=Replace(risul,"
","")
b=Replace(a,"
","")
risul=b
else
risul=mid(testo,1,lung)
a=Replace(risul,"
","")
b=Replace(a,"
","")
risul=b
end if
%>
<%=risul%>
<%end if%>
------------------------ >

Ultimi suggerimenti che mi ha dato davide sono i seguenti

messaggio=request.form("messaggio")
messaggio=replace(messaggio, "<img","")
messaggio=request.form("messaggio")
if instr(messaggio,"<img") < 1 then

else

response.write("messaggio non inserito per la presenza di una immagine")

end if

------------------------ >

L'ultimo suggerimento invece reperito su html.it è il seguente

quando stampi il messaggio o post usi server.htmlEncode(testo_da_stampare) così se usi il tag html questi non vengono interpretati
------------------------ >

Spiegatemi voi la soluzione io sto in tilt!!
 
RE alex

Scusatemi ma la domanda è incompleta.

Dove li piazzo i suggerimenti di davide, tra i tag del form, o tra lo script asp in Replace.
Questo Replace mi confonde.
Scusatemi ancora ma non sono un asso in asp. ci sto dentro da poco. :gun:
:hammer:
 
alex, le soluzioni erano o una o l'altra, così come le hai usate nn vanno bene.

A mio avviso, è meglio se i post con le immagini non vengano inseriti, quindi:

<%
if instr(messaggio,"<img") < 1 then


set inserisci=server.createobject("ADODB.command")
inserisci.activeconnection="Stringa connessione database"
inserisci.commandtext="INSERT INTO tabella (campo,campo2) VALUES ('valore1','valore2')"
inserisci.execute()


else

response.write("messaggio non inserito per la presenza di una immagine")

end if
%>


capito adesso?
Se vuoi invece inserire, puoi usare replace per sostituire i TAG oppure il comando server.htmlEncode, ma in questi ultimi 2 casi, a video ti verranno stampati i fastidiosi tag e tutto il resto.

ciao.
 
Reply alex for big Davide

Questo è un pezzo del tuo codice lo riconoscerai, ho capito in parte e l'ho assemblato cosi, però non funziona... Non capisco valore1,2,ecc che cisi mette li
e poi "Tabella" = quella del database?
(nome,email,descrizione) sono i campi testo dove si scrive ho indovinato? O sono valore 1,2, ecc.?
Puoi farmi queste correzzioni?

<---------------------------------------------------------------------------------------->
Grazie saluti a tutti gran lavoro su questo sito,molto bello indirizzerò della gente sicuramente, manca una cosa però,....Perchè non arrivano gli avvisi e-mail quando qualcuno risponde ai post?
<---------------------------------------------------------------------------------------->


<%
Dim hitDiscuss
Dim hitDiscuss_numRows

if instr(messaggio,"<img") < 1 then

Set hitDiscuss = Server.CreateObject("ADODB.Recordset")
hitDiscuss.ActiveConnection = MM_Forum_STRING
inserisci.commandtext="INSERT INTO tabella (nome,email,descrizione) VALUES ('valore1','valore2')"
inserisci.execute()
else
response.write("messaggio non inserito per la presenza di una immagine")
end if

hitDiscuss.Source = "SELECT * FROM Discussioni WHERE ID = " + Replace(hitDiscuss__MMColParam, "'", "''") + ""
hitDiscuss.CursorType = 0
hitDiscuss.CursorLocation = 2
hitDiscuss.LockType = 1
hitDiscuss.Open()

hitDiscuss_numRows = 0
%>
 
Ultima modifica:
fai come segue per essere più sicuro:


<%
Dim hitDiscuss
Dim hitDiscuss_numRows

if instr(messaggio,"src=") > 0 then

Set hitDiscuss = Server.CreateObject("ADODB.Recordset")
hitDiscuss.ActiveConnection = MM_Forum_STRING
inserisci.commandtext="INSERT INTO tabella (nome,email,descrizione) VALUES ('valore1','valore2')"
inserisci.execute()
else
response.write("messaggio non inserito per la presenza di una immagine")
end if

hitDiscuss.Source = "SELECT * FROM Discussioni WHERE ID = " + Replace(hitDiscuss__MMColParam, "'", "''") + ""
hitDiscuss.CursorType = 0
hitDiscuss.CursorLocation = 2
hitDiscuss.LockType = 1
hitDiscuss.Open()

hitDiscuss_numRows = 0
%>
 
Pagina non disponibile

Ma la tabella deve essere corrispondente all'utilizzo del file giusto? Cioè in esempio INSERT INTO Discussioni oppure post eccetera.

<%
Dim Forum
Dim Forum_numRows

Set Forum = Server.CreateObject("ADODB.Recordset")
Forum.ActiveConnection = MM_Forum_STRING
inserisci.commandtext="INSERT INTO Discussioni (nome,email,descrizione) VALUES ('valore1','valore2')"
inserisci.execute()
else
response.write("messaggio non inserito per la presenza di una immagine")
end if
Forum.Source = "SELECT * FROM ElencoForums WHERE ID = " + Replace(Forum__MMColParam, "'", "''") + ""
Forum.CursorType = 0
Forum.CursorLocation = 2
Forum.LockType = 1
Forum.Open()

Forum_numRows = 0
%>
 
Dico nell'isert into la tabella corrisponde al dtb. Vedi messaggio

mi sono sbagliato ripeto
 
Ultima modifica:
Ma non si eliminano i messaggi perchè !!! Bo

vedi prossimo.
 
Ultima modifica:
Dico nell'isert into la tabella corrisponde al dtb. Vedi messaggio

Set Forum = Server.CreateObject("ADODB.Recordset")
Forum.ActiveConnection = MM_Forum_STRING
inserisci.commandtext="INSERT INTO Discussioni (nome,email,descrizione) VALUES ('valore1','valore2')"
inserisci.execute()
--------------------------------------------------
inserisci.commandtext="INSERT INTO Tabella.mdb?(nome,email,descrizione) VALUES ('valore1','valore2')"
inserisci.execute()
--------------------------------------------------


Io l' ho inserito tale e quale a come tu me l'hai dato, ma mi da l'errore pagina non disponibile, devo apportare delle modifiche tipo di tabella.mdb o qualcosa simile ? Considera che il database del forum è tale e quale al tuo su daviduccio.it non ci fa una piega.

Questo è come tu lhai postato.

<%
Dim Forum
Dim Forum_numRows

Set Forum = Server.CreateObject("ADODB.Recordset")
Forum.ActiveConnection = MM_Forum_STRING
inserisci.commandtext="INSERT INTO Discussioni (nome,email,descrizione) VALUES ('valore1','valore2')"
inserisci.execute()
else
response.write("messaggio non inserito per la presenza di una immagine")
end if
Forum.Source = "SELECT * FROM ElencoForums WHERE ID = " + Replace(Forum__MMColParam, "'", "''") + ""
Forum.CursorType = 0
Forum.CursorLocation = 2
Forum.LockType = 1
Forum.Open()

Forum_numRows = 0
%>
 
Nessuna Assolutamente nessuna.

Solo e semplicemente Pagina non disponibile, come se il link non esistesse.
Domanda ma non potresti testarli sul tuo forum visto l'equità dei file e girarmeli ?
Tra l'altro i file sono due da modificare - uno è newPost.asp
e l'altro è newDscuss.asp
la soluzione sarà la medesima immagino peò i bug sono due.
----------------------------------------------------------
Visto che ci siamo ti posto un'altra domanda, da prendere in considerazione dopo aver risolto il primo problema naturalmente.... 1 Per volta.....
Ho visto in un forum straniero, sniz forum che sicuramente conoscerai;
sul loro c'è addirittura la possibilità di attivarlo o disattivarlo l'html, questo per rendere accessi esclusivi all'aministratore o più amministratori, per poter inserire immagini sicure per mezzo del codice asp o html.
Ciao ti do sempre da fare, ma se noi non ci fossimo noi forumisti, non ci saresti neanche tu nella nostra memoria ormai sloganata dal mito --- daviduccio.it ----- Grandeeeeeeeeeeeeee

A presto ed ho visto che avete seguito il mio consiglio sull'invio di mail collegate ai post, quando ci darete questa dritta anche a noi ?
Ciao.:byebye:
 
Ultima modifica:

Discussioni simili