Italian Libreria UploadFilePhp

AlpVir

Well-Known Member
Licensed User
Longtime User
Grazie.
Ho un normale hosting su cui gira IIS e ASP (volendo anche php) con cui ho risolto tutti i miei problemi di upload.
Sinceramente non so se avrei potuto, in questo spazio web, installare il server sviluppato in b4j (presumo quello che fa riferimento a RDC)
 

FabioRome

Member
Licensed User
Longtime User
Non serve nessuna parte server, uso b4j solo perché ho sviluppato un software multipiattarforma e tra le altre cose carica su un server dei file. Questo sistema di upload funziona anche su aruba senza dover fare accessi ftp ma facendo tunneling php. è il principio simile per eseguire query su hosting dove non si ha accesso diretto al database
 

LordZenzo

Well-Known Member
Licensed User
Longtime User
Non serve nessuna parte server, uso b4j solo perché ho sviluppato un software multipiattarforma e tra le altre cose carica su un server dei file. Questo sistema di upload funziona anche su aruba senza dover fare accessi ftp ma facendo tunneling php. è il principio simile per eseguire query su hosting dove non si ha accesso diretto al database

ora siamo (o forse lo sono solo io) curiosi come scimmie
 

FabioRome

Member
Licensed User
Longtime User
codice PHP da scrivere su file caricare sul server:
B4X:
<?php
   $jsonstring = file_get_contents("php://input");

   $jsonlist = array();
   $jsonrow = array();
   $jsonlist=json_decode($jsonstring, true);
  
   $jsonrow=$jsonlist[0];

    $ServerFolderName=$jsonrow["ServerFolderName"];
     $ServerFileName=$jsonrow["ServerFileName"];
    $FileContent=base64_decode($jsonrow["FileContent"]);
      
   file_put_contents($ServerFolderName . $ServerFileName, $FileContent);
?>

codice B4J :

B4X:
Private Sub Upload_File

    Dim tmpPathDisco  As String = percorso del disco dove si trova il file da caricare
    Dim tmpNomeFile As String = nome del file da caricare

    Dim upl As RandomAccessFile
    Dim l As Int
    Private tmpIDLuogo As Int = lblIDLuogoAttuale.Text
    Dim ServerFolderName As String = "/percorso fisico sul server dove deve essere caricato il file/"
    Dim ServerFileName As String = tmpNomeFile.ToLowerCase
    glbLinkServer = "https:// percorso web dove deve essere caricato il file /" & ServerFileName
    upl.Initialize(tmpPathDisco,tmpNomeFile, False)
  
    l = upl.Size 'Grandezza del file
    Dim FileBuffer(l) As Byte, fileString As String
    upl.ReadBytes(FileBuffer,0,l,upl.CurrentPosition)
    upl.Close
  
    Dim su As StringUtils
    fileString=su.EncodeBase64(FileBuffer)
      
    Dim JSONList As List 'test
    JSONList.Initialize
   
    Dim JsonRowMap As Map 'test   
    JsonRowMap.Initialize
  
    JsonRowMap.put("FileContent", fileString)
    JsonRowMap.put("ServerFolderName", ServerFolderName )
    JsonRowMap.put("ServerFileName", ServerFileName)
  
    JSONList.add(JsonRowMap)
 
    Dim JSONGenerator As JSONGenerator
    JSONGenerator.Initialize2(JSONList)
 
    Dim JSONstring As String
    JSONstring = JSONGenerator.ToString
  
    Dim FileUpload As HttpJob
    FileUpload.Initialize(fileUPLOAD_IMMAGINI, Me)
    FileUpload.PostString("https://percorso web dove si trova il nostro file php",JSONstring)        
     
End Sub

B4X:
Sub JobDone(Job As HttpJob)
   
    If Job.Success Then
    Dim res As String
        res = Job.GetString
''        'Log("Response from server: " & res)
        Dim parser As JSONParser
        parser.Initialize(res)
        Select Job.JobName
            Case fileUPLOAD_IMMAGINI
                fx.Msgbox2(frm, "Immagine caricata correttamente","Risultato", "OK", "", "", fx.MSGBOX_INFORMATION)

            Case Else
                Log ("Job.JobName: " & Job.JobName )
        End Select
    Else
    fx.Msgbox2(frm, Job.ErrorMessage, "[DATABASE] Errore", "OK", "", "", fx.MSGBOX_ERROR)
    'Log ("Error: " & Job.ErrorMessage)
    End If
    Job.Release

End Sub

Ripreso dal post https://www.b4x.com/android/forum/t...a-php-script-with-x-parameters.60109/#content
 

AlpVir

Well-Known Member
Licensed User
Longtime User
codice VBScript da caricare sul server
B4X:
<%@ Language=VBScript %>
<%
strFileBase="prova.txt"
a=Request.TotalBytes
b=Request.BinaryRead(a)
set BinaryStream = CreateObject("ADODB.Stream")
BinaryStream.Type = 1
BinaryStream.Open
BinaryStream.Write b
'
BinaryStream.SaveToFile server.MapPath("/Cartella") & "/" & strFileBase , 2
BinaryStream.close
set BinaryStream = nothing
%>

codice B4A
B4X:
HttpClient1.PostFile("http://" & SitoMio & "/ricevi.asp",File.DirRootExternal,NomeFile)

B4X:
Sub JobDone (Job As HttpJob)
    If Job.Success = True Then
      Select Job.JobName
       Case "HttpClient1"
         log ("OK")
     end select
   end if
end sub
Se si sono dei parametri :
B4X:
Parametri="num=" & numero & "&cod="&Cod
HttpClient1.PostFile("http://" & SitoMio & "/ricevi.asp?" & Parametri,File.DirRootExternal,NomeFile)

Librerie: OKHttp
 
Last edited:
Top