När du håller på med filer ska du inte bara förutsätta att allt funkar - kolla returvärdet från fopen och skriv ut ett felmeddelande istället för en bekräftelse om det sket sig. Sen är loggar alltid bra, säger serverns logg någonting? Om inte, lägg in lite egna logganrop i din kod.
Hejsan, jag använder mej av Mosms.se för att försöka skicka mina egna MMS från min mobil till min webserver, jag har gjort en kopling som fungerar, när koden nedan aktiveras av mitt MMS så registreras det i databasen, men INGEN bild laddas up på min server, någon som kan se i koden eller använder mosms som kan se om jag gjort något fel? jag får bekräftelse på att mitt mms gåt fram, hur bekreftelsen ser ut syns nedan.
jag funderade på server inställnings fel först men mappen är CHmodad 777 samt jag set inte i utraged nedan att den ens försöker skicka bilden till min server, eller att scriptet försöker spara ner den.
"utdrag ur SMSlogg från mosms"
2007-03-28 20:43:20 - SYSTEM_NOTICE: Incoming MMS From 'Tele2', Number '46736594820'
2007-03-28 20:43:21 - SYSTEM_NOTICE: OK! service found.
2007-03-28 20:43:24 - SYSTEM_NOTICE: External url 'http://abram.brinkster.net/mms/RECEIVE_LIVE_MMS.PHP' fetched OK.
2007-03-28 20:43:24 - SENDING_MESSAGE – NR: "46removed", DATA: "Tack för ditt MMS! :)"
KOD
<?
// Definiera konstanter för databasanslutning
$MYSQL_HOST = 'mupp';
$MYSQL_USER = 'muppet';
$MYSQL_PASSWORD = 'removed';
$MYSQL_DATABASE = 'mms';
// Stäng av PHP:s felrapportering
error_reporting(0);
// Anslut till databasen
mysql_connect($MYSQL_HOST, $MYSQL_USER, $MYSQL_PASSWORD);
mysql_select_db($MYSQL_DATABASE);
// Plocka ut avsändarnumret
$nr = $_REQUEST['nr'];
// Plocka ut MMS-meddelandet
$sms = urldecode($_REQUEST['sms']);
// URL till MMS bilden om någon bild skickades med
$mms = urldecode($_REQUEST['mms']);
// Plocka ut priset slutanvändaren blev debiterad (för exempelvis egen
// statistik)
$tariff = $_REQUEST['tariff'];
// Lägg in data i databasen
mysql_query('INSERT INTO mms (sender,message,tariff,tstamp) VALUES ("'
. addslashes($nr) . '","'
. addslashes($sms) . '","'
. addslashes($tariff) . '",now())');
// Ladda ner och spara eventuell bild
if ($mms != '') {
// Plocka ut id på senaste databas-inlägg
$id = mysql_insert_id();
// Läs in och spara filen i katalogen 'data'
$file = fopen('data/' . $id . '.jpg', 'w');
fwrite($file,file_get_contents($mms));
fclose($file);
}
// Svaret som skickas tillbaka till slutanvändaren
echo 'Tack för ditt MMS! :)';
?>
