Postingan lainnya
Aneh pada GET[] dan POST[]
Mengolah hasil dari GET atau POST berbeda dengan yang langsung kalimat dari isi GET atau POST .
$dat="$_POST[email]";//atau pakai GET sama saja
$Kalimat=trim($dat);
$hasil=explode(" ",$kalimat);
foreach ($hasil as $to) {
$kata=strpos($to,',');
$kata1=$hasil+1;
$kata2=substr($to, $kata1);
$mel=substr($to,0,$hasil);
$nim=substr($kata2,-1);
$nama= str_replace('_',' ',$kata2);
$nam=str_replace(' ',' ',$nama);
echo"$mel - $nam<br />"; //hasilnya : mail@email.com - User satu mail1@email.com,Useru mail2@email.com,Usera
}
Tapi kalau kalimat langsung, contoh
$dat=" mail@email.com,User_satu mail1@email.com,Useru mail2@email.com,Usera"; //bukan dari hasil POST atau GET
$Kalimat=trim($dat);
$hasil=explode(" ",$kalimat);
foreach ($hasil as $to) {
$kata=strpos($to,',');
$kata1=$hasil+1;
$kata2=substr($to, $kata1);
$mel=substr($to,0,$hasil);
$nim=substr($kata2,-1);
$nama= str_replace('_',' ',$kata2);
$nam=str_replace(' ',' ',$nama);
echo"$mel - $nam<br />";
//hasilnya :
//mail@email.com - User satu
//mail1@email.com - Useru
//mail2@email.com - Usera
}
apa sebabnya?
3 Jawaban:
<div>Variabel $_POST dan $_GET adalah variabel global default yang include pada PHP. Nah untuk jenisnya sendiri itu berupa variabel array. Oleh karenanya untuk mengambilnya nilai nya harus pakai nama key-nya. Contoh :<br><br>$_POST['nama'] berarti ini mengambil nilai dari input text yang memiliki atribut name -nya nama.<br>Atau<br>$_GET['usia'] berarti ini mengambil nilai dari parameter url dengan key usia, contoh nya seperti : http://blabla.com/profile.php?usia=23<br><br>Maka ketika pakai $_GET['usia'], nilainya adalah 23.<br>Untuk kode agan,<br>Coba diganti gini :<br><br></div><pre>$dat= $POST["email"];
$Kalimat=trim($dat);
$hasil=explode(" ",$kalimat);
foreach ($hasil as $to) {
$kata=strpos($to,',');
$kata1=$hasil+1;
$kata2=substr($to, $kata1);
$mel=substr($to,0,$hasil);
$nim=substr($kata2,-1);
$nama= str_replace('',' ',$kata2);
$nam=str_replace(' ',' ',$nama);
echo"$mel - $nam<br />"; //hasilnya : mail@email.com - User mail1@email.com,User1 mail2@email.com,User2
}</pre>
Tanggapan
saya telah coba POST["email"] ,hasil masih sama aja , tidak ada perubahan, makanya saya katakan "Aneh"
Bisa dilampirkan script form html nya?
pak @ahanafi Saya telah telah menampilkam script formnya , karena tidak bisa di taggapan maka saya masukkan di jawaban
sebagai catatan, diawal saya bikin script form itu ya normal saja dan bisa dijalankan dengan sesuai, tapi akhir akhir ini menjadi seperti yang saya jelaskan, pertanyaannya , apakah ada perubahan di sistem PHP 7?, makanya butuh pencerahan.
<div>Kepada @ahanafi<br> ini saya kirimkan script formnya<br><br></div><pre> <div class="alert alert-secondary" role="alert"> Kirim pesan ke para Member </div> <div class="alert alert-light" role="alert"> <form action="sending.php" method="POST" target="_blank"> <div class="form-group"> <label class="sr-only">Email tujuan</label> <textarea class="form-control" name="email" required/> <?php $sql=$connect->query("SELECT * FROM member LIMIT 10"); $sql->execute(); while($s=$sql->fetch()) {
$email=$s['email']; $nama= str_replace(' ','_', $s['nama']); $mail="$email,$nama&nbsp"; $mal=trim($mail); echo"$mal"; } ?> </textarea> </div> <div class="form-group"> <label class="sr-only">Judul</label> <input type="text" name="subject" value="" required /> </div> <div class="form-group"> <label class="sr-only">Isi pesan</label> <textarea class="form-control" name="pesan" value="" required /></textarea> </div> <input type="submit" class="btn btn-primary mb-2" value="submit"> </form> </div></pre>
<div>Alhamdulillah kasus sudah fix .<br>ada yang perlu dibenahi di form kirim pesan , menjadi :<br><br></div><pre><div class="alert alert-secondary" role="alert"> Kirim pesan ke para Member </div> <div class="alert alert-light" role="alert"> <form action="sending.php" method="POST" target="_blank"> <div class="form-group"> <label class="sr-only">Email tujuan</label> <textarea class="form-control" name="email" required/> <?php $sql=$connect->query("SELECT * FROM member LIMIT 10"); $sql->execute(); while($s=$sql->fetch()) {
$email=$s['email']; $nama= str_replace(' ','_', $s['nama']); $mail="$email,$nama "; echo"$mail"; } ?> </textarea> </div> <div class="form-group"> <label class="sr-only">Judul</label> <input type="text" name="subject" value="" required /> </div> <div class="form-group"> <label class="sr-only">Isi pesan</label> <textarea class="form-control" name="pesan" value="" required /></textarea> </div> <input type="submit" class="btn btn-primary mb-2" value="submit"> </form> </div></pre><div><br>Terima kasih untuk semuanya terutama Bapak @ahanafi </div>