---
title: "PHP, Ajax, Jqury relodar inte div och kör inte ljudfilen"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/188110-php-ajax-jqury-relodar-inte-div-och-kör-inte-ljudfilen"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "dwmedia"
published: "2011-10-18T03:20:39.000Z"
updated: "2011-10-18T12:42:11.000Z"
replies: 5
views: 778
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/188110-php-ajax-jqury-relodar-inte-div-och-kör-inte-ljudfilen"
---

# PHP, Ajax, Jqury relodar inte div och kör inte ljudfilen

## #1 — dwmedia, 2011-10-18T03:20Z

Så här ser min ajax ut. 

```
function fetchPlaySound()
{
	$.ajax({
		method: "get",
		url: "../_scripts/ajax_play_sound.php",
		data: "",
		success: function(result) { $("#PlaySound").html(result); }
	});
		
	setTimeout('fetchPlaySound()', 1000);
}
```

Så här ser php koden ut. 

```
<?php
include("../mysql.php");
 
$sql = "SELECT sms_sound, virtualnummer_nya FROM Users WHERE id = '{$_SESSION['sess_id']}'";
$result = mysql_query($sql, $conn);
while($row = mysql_fetch_array($result)) {
 
if ($row['sms_sound'] > "" AND $row['virtualnummer_nya'] > "0") {
echo "<embed src='../audio/{$row['sms_sound']}' autostart='true' width='1' height='1' id='sound1'></embed>";
} else {
// Inget
}
}
?>
```

sedan har jag diven så här 

\<div id='PlaySound'\>\</div\>

Det jag vill är när dem får ett inkommande SMS, då ska den spela upp ett förbestämd ljudfil eller ingen alls om dem inte väljer spela ljud. 

Problemet är att den värka inte ens vilja börja spela eller göra något alls. 
Säkert missad något simpelt som man löser med lite sömn, vi får se vem som löser det först :D

God natt alla och tack på förhand.

Permalänk: https://www.webforum.nu/p/188110

## #2 — voigtann1, 2011-10-18T06:14Z

Skriv aldrig en setTimeout på det sättet, kör aldrig eval!

Sen verkar det som du inte anropar din metod fetchPlaySound någon gång, sen vet jag inte om du vill hämta AJAX anropet varje sekund heller?

```
function fetchPlaySound() {
	$.ajax({
		method: "get",
		url: "../_scripts/ajax_play_sound.php",
		data: "",
		success: function(result) { $("#PlaySound").html(result); }
	});
}

setTimeout(fetchPlaySound, 1000);
```

Om du vill anropar din ajax metod efter en sekund.

Permalänk: https://www.webforum.nu/p/2284224

## #3 — dwmedia, 2011-10-18T06:24Z

Jag vill att den kollar när det har inkommit ett SMS, folk får ingående SMS hela tiden. 
Dock kommer den ju inte spela något sound så länge dem inte har fått något nytt meddelande. Tänkte i själva php sedan sätta den till noll efter leveransen så lär den nog inte spela igen.

Något åt det här hållet eller. 

```
function fetchPlaySound() {
	$.ajax({
		method: "get",
		url: "../_scripts/ajax_play_sound.php",
		data: "",
		success: function(result) { $("#PlaySound").html(result); }
	});
}

setTimeout(fetchPlaySound, 10000);

$(document).ready(function(){
	fetchPlaySound();
	
	$("#sound-send").click(
		function()
		{
			$.ajax({
				method: "get",
				url: "../_scripts/ajax_play_sound.php",
				data: "username=" +	username + "&message=" + message,
				success: function(result) { $("#errsucc").html(result); }
			});
			
			$("#PlaySound").val("");
			
			return false;
		}
	);
});
```

Permalänk: https://www.webforum.nu/p/2284225

## #4 — voigtann1, 2011-10-18T06:28Z

känns lite konstigt att du kör den varje sekund, ajax anropet kan ju ta längre än en sekund att hämta:

```
function fetchPlaySound() {
    $.ajax({
        method: "get",
        url: "../_scripts/ajax_play_sound.php",
        data: "",
        success: function(result) {
            $("#PlaySound").html(result);
            setTimeout(fetchPlaySound, 1000);
        }
    });
}
fetchPlaySound();
```

känns mer logiskt.

Permalänk: https://www.webforum.nu/p/2284226

## #5 — dwmedia, 2011-10-18T12:27Z

Det har du rätt i, kanske kör den på var 20 sekund kanske, men skulle dem byta sida hela tiden så skulle den inte hinna genera ljudet. 

Så finns det något bra lösning på det egentligen?

Permalänk: https://www.webforum.nu/p/2284229

## #6 — voigtann1, 2011-10-18T12:42Z

Köra anropet efter att ajax anropet faktist har körts?

Permalänk: https://www.webforum.nu/p/2284230

---

Tråden på webben: https://www.webforum.nu/amne/php/188110-php-ajax-jqury-relodar-inte-div-och-kör-inte-ljudfilen
