Используйте сериализацию и удаляйте обратную косую черту, избегая косой черты.

Я сериализирую строку для возможности отправки в php-скрипт, но функция оставляет строку с / вместо /.
Я хотел бы удалить \ из строки.

Вы можете мне помочь ?

Функция, которую я использую:

$scope.serialize = function(obj, prefix) {
var str = [];
for(var p in obj) {
if (obj.hasOwnProperty(p)) {
var k = prefix ? prefix + "[" + p + "]" : p, v = obj[p];
str.push(typeof v == "object" ?
serialize(v, k) :
encodeURIComponent(k) + "=" + encodeURIComponent(v));
}
}
return str.join("&");
}

Я использую эту функцию для отправки в файл:

$scope.send = function(){

// sendToServer.f($scope.serialize($scope.line))
sendToServer.f($scope.line)
.success(function(){
console.log('SUCESS ! sent to angualar-seed/db.jsonp, using appendToDb.php !')
})
.error(function(){
console.log('ERROR !')
});
}

Кстати, функция для отправки строки в php:

services.js:

.service('sendToServer', [
'$http',
function ($http) {
'use strict';

this.f = function (dataToSend) {
return $http({
url: 'http://id:pwd@bodlip.com/angular-seed/appendToDb.php',
method: "POST",
data: dataToSend,
headers : {
'Content-Type' : 'application/x-www-form-urlencoded; charset=UTF-8'
}
});
};
}
])

Я думал, что я должен сделать это в php, и я положил это в свой файл php:

 $data[] = $_POST;

//file_put_contents('log.txt', print_r($data, true), FILE_APPEND);

function stripslashes_deep($value)
{
$value = is_array($value) ?
array_map('stripslashes_deep', $value) :
stripslashes($value);

return $value;
}

$data = stripslashes_deep($data);

0

Решение

Я добавил эту строку в мой код:

$line = str_replace('\\', '', $line);
0

Другие решения

Других решений пока нет …