0

IDの前に空白が表示されますか?

それが戻ってきたとき、私はこれを手に入れますか?

&id=%20%20%20%20%20%20%20%20%20%20%20%201005

これを行うことになっています

&id=1005

それは私のjqueryデータコードでしょうか?

    success: function(data) { 
    $('.success').slideDown('slow');  
    setTimeout(function(){window.location="user.php?v=single&id="+data;}, 3000);            
    }   

またはそれはphpコードでしょうか?

<?php
include 'includes/db.php';
protect();
if(isset(clean($_POST['uid']))) { 
$usrid=$_SESSION['uid'];
$insertNewUser=mysql_query("INSERT INTO users (uid,status,datetime) VALUES  ('$usrid','0',NOW())") or die(mysql_error());
$id=mysql_insert_id();
echo $id;
$insertUserOptions=mysql_query("INSERT INTO users_options (uid,lid) VALUES  ('$usrid','$id')") or die(mysql_error());
mkdir('media/listings/'.$id,0755);
mkdir('media/listings/'.$id.'/photos',0755);
mkdir('media/listings/'.$id.'/documents',0755);
mkdir('media/listings/'.$id.'/video',0755);
mkdir('media/listings/'.$id.'/audio',0755);
chmod('media/listings/'.$id,0775);
chmod('media/listings/'.$id.'/photos',0775);
chmod('media/listings/'.$id.'/documents',0775);
chmod('media/listings/'.$id.'/video',0775);
chmod('media/listings/'.$id.'/audio',0775);
} 
?> 

アップデート:

idの前にあるすべての文字は、protect()関数に含まれるファイルの数行を追加したためです。これらのインクルードを新しい関数に移動し、それに応じて呼び出すと、問題が修正されました。明確な解決策もマーティンに感謝します:)。

4

2 に答える 2

1

おそらく、コードにいくつかの空白を出力しています。includes/db.php

ファイルの最後でPHPコードを閉じないことをお勧めします。不要で面倒くさい

于 2012-07-12T09:26:03.707 に答える
0

これを試してください。解決策ではなく、回避策です。

$('.success').slideDown('slow');  
    setTimeout(function(){window.location="user.php?v=single&id="+$.trim(data);}, 3000);            
}   

jQuerytrim関数を使用して前後のスペースを削除します。それはトリックを行う必要があります。

実際に修正するには、他にいくつかのことができます。

オプション1

IDをjson文字列として返すため、スペースは表示されません。

オプション2

ファイルにエコースペースがないか確認するか、必要のない場合はphpタグを閉じて、結果にスペースをエコーし​​ます。

于 2012-07-12T09:27:06.073 に答える