2011-12-24 12 views
0

これは私の最初の投稿です。私はリポジトリを検索して、私が探していた答えを見つけられなかったので、私と一緒に裸にしてください。私は、これらのフィールドのDB値を提供しているページにフォームを作成しています。最終結果は、「メンバーユーザー」がそれに応じて更新できるようにすることです。whileループ内でのPHPのRTRIM関数の使用

「/」の末尾を切り取ることができません。私はRTRIM()を使用しようとしています。プレフィルドデータ/ wの構築を通じて、私のテーブルをループに

`$m_q = "SELECT * FROM members where memid='$m_memid'";` 
`$b_result = mysql_query($m_q);` 

コード:

クエリは、私のデータをつかむために

while ($row = mysql_fetch_assoc($b_result)) { $m_userinfo .= "<tr class=\"logreg\">\r\n<td><b>First Name</b></td>"; $m_userinfo .= "<td><input type=\"text\" name=\"firstname\" value={$row['RTRIM(firstname)']}/></td></tr>"; .........

私がいる問題があります何も調整されません。シンタックスを次の場所にスワップすると、次のようになります。

{$row[rtrim('firstname')]}変更はありません。どんな助けでも大歓迎です!!前もって感謝します。

答えて

1

(例えば、最初のケースでは全体の文字列「RTRIM(FIRSTNAME)」)あなたは、配列のインデックスの外にこれを行う、またはPHPは配列のインデックス自体としてそれを解釈します:

while ($row = mysql_fetch_assoc($b_result)) 
{ 
$trimmed = rtrim($row['firstname'],'/'); 
$m_userinfo .= "<tr class=\"logreg\">\r\n<td><b>First Name</b></td>"; 
$m_userinfo .= "<td><input type=\"text\" name=\"firstname\" value=\"{$trimmed}\"/></td></tr>"; 
} 
+0

または単に '$トリミング= RTRIM($行[ 'FIRSTNAME']、 "/");' – diEcho

+0

@diEchoのおかげで、私は彼が文字を定義した部分をスキップ彼はトリムしたい...:/。私の答えを修正しました –

+0

'value = \ "$ trimmed"'だけでなく 'value = \ "{$ trimmed} \"'ですか? –

0
 
value={rtrim($row['firstname'], '/')} 
2

Databseから取得する際のトリミング方法が改善されました。私は単一引用符で囲まれた文字列とドット連結を使用する方が簡単だと思う

TRIM

+1

あなたが知っているのは、これが正しい答えです。 PHPよりもデータベースでこれを行うほうがいいですか? +1 –

0

:この

"SELECT TRIM(TRAILING '/' FROM `columname`) AS fname, other columns FROM tableName" 

参考にしてみてください。あなたは "。$ trimmed。"のドットの間に式を置くことができます。もしあなたが望むならば。私は文字列作業を行う前に変数を単純化するのが好きです。

<?php 
while ($row = mysql_fetch_assoc($b_result)) 
{ 
$trimmed = rtrim($row['firstname'],'/'); 
$m_userinfo .= '<tr class="logreg">' . "\r\n" . '<td><b>First Name</b></td>'; 
$m_userinfo .= '<td><input type="text" name="firstname" value="' . $trimmed . '"/></td></tr>'; 
} 
?> 

時々私はこれを行うかもしれません。 (エヴァーヒアドキュメントを聞く?):

<?php 
    while ($row = mysql_fetch_assoc($b_result)) 
    { 

    $trimmed = rtrim($row['firstname'],'/'); 
    $m_userinfo .= <<<EOT 
<tr class="logreg"> 
<td><b>First Name</b></td> 
<td><input type="text" name="firstname" value="$trimmed"/></td></tr> 
EOT; 
    } 
// Read the manual about Heredoc if you don't know about it. 
    ?> 
関連する問題