2017-04-24 14 views
0

こんにちは私は持っているにtextArea smsと別のテキストフィールドsms_count ..PHPでフィールドの値を抽出して保存し

sms_countの値は、ユーザが、それは文字をカウントし、それを示しているにtextArea smsで何も入力するたびに、このUsed: 0/765 (1/5) | Left: 765ようなものですsms_count

にユーザーがこれまでに30個の文字を入力した場合、そのsms_countの値は、このUsed: 30/765 (1/5) | Left: 765

送信ボタンをクリックすると、私はヴァルを得るようになりますこのようなsms_countのUE ..私は30で、彼が入力した文字を得るか、私は(1/5)のみの代わりに、Used: 30/765 (1/5) | Left: 748

に値1を保存する必要がどのように

sms_count => Used: 30/765 (1/5) | Left: 735 

私は取得する必要がありますこの場合、1の値ですが、違う可能性があります...ユーザーが160文字以上入力した場合、sms_countの値は2(2/5)となり、320文字以上入力した場合は3になります3/5)

examp le 30/765(1/5)|左:735 161/765(2/5)|左:604 330/765(3/5)|左:435

PHPでこれらの値をデータベースに保存するにはどうすればよいですか?以下は

二つのフィールド1のスクリーンショットは、あなたがこのようにしたい数字を抽出することができますにtextArea smsとテキストフィールドの文字列操作の少しでsms_count

enter image description here

<div class="form-group"> 
<?PHP echo $form->textArea($model, 'sms', array('class' => 'form-control', 'id'=>'Campaigns_welcome_sms', 'onpaste' => "return textCounter(this.form.Campaigns_welcome_sms,this.form.smsAndCharactersCount,this.form.smsAndCharactersCount);", 'onkeyup'=>"textCounter(this.form.Campaigns_welcome_sms,this.form.smsAndCharactersCount,this.form.smsAndCharactersCount);", 'onkeypress'=>"textCounter(this.form.Campaigns_welcome_sms,this.form.smsAndCharactersCount,this.form.smsAndCharactersCount);")); ?>       
<?php echo $form->textField($model, 'sms_count', array('class' => 'form-control', 'style'=>"width: 370px", 'id'=>"smsAndCharactersCount", 'value'=>"Used: 0/765 (1/5) | Left: 765", 'readonly'=>"readonly")); ?> 
</div> 

答えて

0

です:

$sms_count = 'Used: 30/765 (1/5) | Left: 735'; // YOUR VARIABLE FROM SUBMITTED DATA 

$sms = explode('/',$sms_count); // SPLIT STRING TO ARRAY BY SLASHES:  

//CREATE VARIABLE $user THAT CONTAINS THE NUMBER OF CHARACTERS USED: 
$used = substr($sms[0], stripos($sms[0],' ')+1); //FINDS THE SPACE ' ' AND RETURNS THE REST OF THE STRING STARTING FROM THERE... 

//CREATE VARIABLE $count THAT CONTAINS THE NEXT NUMBER YOU WANT: 
$count = substr($sms[1], -1, 1); // EXTRACTS THE LAST CHARACTHER/NUMBER 

echo 'used: '. $used .' count: '.$count;を使用して、結果がどうなっているかを確認できますあなたは後です。この場合、私は出力します:used: 30 count: 1

これをデータベースに保存する方法は、セットアップによって異なります。これは単なる通常の挿入または更新クエリです。通常のSQL挿入クエリは次のようになります。

$sql = "INSERT INTO table_name (identifier, used, counts) 
     VALUES ('$identifier', '$used', '$count')"; 
+0

ありがとう –

関連する問題