时遇到使用具有在PHP getter和设定器阵列一个问题。如果不是一个数组我的班级工作正常。我IDEIA是从HTML表单中插入多个电话号码。用户ID是插入,但手机自带空。任何帮助将apreciated。先感谢您。
HTML:
<input type="text" id="form-field-1-1" placeholder="Text Field" name="telefone[]" class="col-xs-10 col-sm-5" />
<input type="text" id="form-field-1-1" placeholder="Text Field" name="telefone[]" class="col-xs-10 col-sm-5" />
-------------- PHP类----------
class Telefone {
private $telefone = array();
public function getTelefone() {
return $this->telefone;
}
public function setTelefone($telefone) {
$this->telefone[] = $telefone;
}
}
-------控制器实现---------
$inserirDados = new AgendaEventoDAO();
$tlfn = new Telefone();
$tlfn->setTelefone($_POST['telefone'] ? trim($_POST['telefone']) : '');
if($inserirDados->inserirTelefone($tlfn,$usuario)){
print "Telefone do Agendamento Inserido com sucesso!";
}
--------DAO-----------------------------
public function inserirTelefone(Telefone $tlfn, SiteUserInfo $usuario) {
$connection = new cnx();
$connection->connect();
$telefon = $tlfn->getTelefone();
$ce_usuario = $usuario->getUser_id();
foreach ($telefon as $telefone) {
$stmt = $connection->myconn->prepare("INSERT INTO tbltelefone_agenda (telefone_agenda,ce_agenda_evento) VALUES (?,?)");
$stmt->bind_param("ii", $telefone,$ce_usuario);
$stmt->execute();
$stmt->close();
$connection->close();
echo("<script>console.log('PHP: Telefone inserido com sucesso!');</script>");
return $stmt;
}
}
$_POST['telefone']
是一个数组,所以你需要循环它调用setter方法。
foreach ($_POST['telefone'] as $tel) {
if ($tel) {
$tlfn->setTelefone(trim($tel));
}
}