webForumDet fria alternativet

Live-SMS

1 svar · 337 visningar · startad av liverpool

liverpoolMedlem sedan nov. 200468 inlägg
#1

Hej

Jag försöker att använda en källkod på vår hemsida där man kan skicka in sms men får följande felmeddelande:

Språk: ASP.NET
Databas: MYSQL

Server Error in '/' Application.
--------------------------------------------------------------------------------

Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".

<!-- Web.Config Configuration File -->

<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
</configuration>

Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL.

<!-- Web.Config Configuration File -->

<configuration>
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/>
</system.web>
</configuration>

Min kod:

<%@ Page Language="C#" Debug="True" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.Odbc" %>
<%@ Import Namespace="MySql.Data.MySqlClient" %>

<%
/*
------------------------------------------------------------------------------
RECEIVE_LIVE_SMS.ASPX
------------------------------------------------------------------------------

Detta skript tar emot ett SMS. Det plockar ut avsändarnummer, meddelande och
tariff (kostnad som slutanvändaren debiteras) och lagrar allt i databas-
tabellen 'sms'.

Databas-tabellen måste skapas manuellt i samma databas som konstanten
$MYSQL_DATABASE sätts till.

Placera detta mottagarskript på din webbserver. Ställ sedan in adressen på
MO-SMS (se sida "Lägg till koppling"). MO-SMS anropar sedan skriptet när någon
anropar din SMS-tjänst.

Allt som ekas ut av ditt skript kommer att hamna i ett svars-SMS till
slutanvändaren. Det är alltså mycket viktigt att skriptet inte genererar några
felmeddelanden eller liknande. Om inget svar ekas ut inom 30 sekunder skickar
MO-SMS automatiskt ut ett "Tack för din beställning"-SMS av debiterings-
tekniska skäl.

------------------------------------------------------------------------------

Specifikation för databas-tabellen:

CREATE TABLE sms (
id INTEGER NOT NULL auto_increment,
sender VARCHAR(20),
message TEXT,
tariff INTEGER,
tstamp DATETIME,
PRIMARY KEY(id)
);

------------------------------------------------------------------------------
*/

// Definiera konstanter för databasanslutning
String MYSQL_HOST = "xxx";
String MYSQL_USER = "XXX";
String MYSQL_PASSWORD = "XXX";
String MYSQL_DATABASE = "XX";

String myConnectionString;

NameValueCollection coll = Request.QueryString;
String nr;
String sms;
String tariff;
Encoding enc = Encoding.GetEncoding(28591); //ISO encoding        

// Plocka ut avsändarnumret
nr = coll\["nr"\];

// Plocka ut SMS-meddelandet
sms = HttpUtility.UrlDecode(coll\["sms"\], enc);

// Plocka ut priset slutanvändaren blev debiterad (för exempelvis egen statistik)
tariff = coll\["tariff"\];    


//skapa ett connectionobjekt
MySqlConnection conn;

//skapa en connectionsträng till aktuell server och databas
myConnectionString = "server=" + MYSQL_HOST + ";" +
                     "uid=" + MYSQL_USER + ";" +
                     "pwd=" + MYSQL_PASSWORD + ";" +
                     "database=" + MYSQL_DATABASE + ";";
    
  
try
{
    //anslut till databasen
    conn = new MySqlConnection();
    conn.ConnectionString = myConnectionString;
    
    //skapa ett commandoobjekt
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = conn;
    cmd.CommandType = System.Data.CommandType.Text;

    // Lägg in data i databasen
    cmd.CommandText = "INSERT INTO sms (sender, message, tariff, tstamp) VALUES (@sender, @message, @tariff, @tstamp)";
    cmd.Parameters.Add("@sender", System.Data.SqlDbType.VarChar).Value = nr;
    cmd.Parameters.Add("@message", System.Data.SqlDbType.Char).Value = sms;
    cmd.Parameters.Add("@tariff", System.Data.SqlDbType.Int).Value = tariff;
    cmd.Parameters.Add("@tstamp", System.Data.SqlDbType.DateTime).Value = System.DateTime.Now;
    conn.Open();
    cmd.ExecuteNonQuery();
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
    Response.Write(ex.Message);
}

// Skicka ett svar tillbaka till slutanvändaren
Response.Write("Tack för ditt SMS!");

/*
------------------------------------------------------------------------------
RECEIVE_LIVE_SMS.ASPX END SCRIPT
------------------------------------------------------------------------------
*/

%>

tydalMedlem sedan juni 20034 013 inlägg
#2

"Felmeddelandet" talar om att felmeddelandet inte visas på grund av en inställning på servern samt ger instruktioner om hur du ska slå på visningen av felmeddelanden. Gör gärna det tillfälligt så du får se felmeddelandet.

132 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)