modificare il sequente codice utilizzando il php return

Jakub Lemiszewski

Utente Attivo
5 Dic 2013
119
1
0
Salve,

Nel seguente codice che è un form basato su un form.class l'insegnate del mio corso di programmazione mi ha chiesto di modificarlo per utillizzare return invece degli echo.
Vorrei capire come perchè sono bloccato su questa cosa da diverso tempo e vorrei andare avanti con il resto. Grazie spero che qualcuno che capisca di php mi risponda.
form.php
PHP:
<?php
$form = new Form();
echo $form->create(array('id'=>'sign_up','name'=>'sign_up','method'=>'post','action'=>'index.php?page=signup'));
 
/*$params = array(
   array(
       'id'		    => 'mail', 
	   'name'		=> 'mail', 
	   'class'		=> '', 
	   'onclick'	=> 'focus', 
	   'columns'	=> '2', 
	   'rows'		=> '1', 
	   'disabled'	=> '',
	   'label'		=> 'Mail' 
   ),
   array(
       'id'		    => 'pass', 
	   'name'		=> 'pass', 
	   'class'		=> '', 
	   'onclick'	=> 'focus', 
	   'columns'	=> '2', 
	   'rows'		=> '1', 
	   'disabled'	=> '',
	   'label'		=> 'Password' 
   )
);*/
echo '<h1>Please sign up for join the forum</h1>';

echo $form->textbox(array
(
       'id'		    => 'mail', 
	   'name'		=> 'mail', 
	   'class'		=> '', 
	   'onclick'	=> 'focus', 
	   'columns'	=> '3', 
	   'rows'		=> '8', 
	   'label'		=> 'Mail' 
   ));
echo $form->textbox(array
(
	   'id'			=>'pass', 
	   'name'		=>'pass', 
	   'onclick'	=>'focus', 
	   'columns'	=> '3', 
	   'rows'		=> '1', 
	   'label'		=> 'Password'   
));
echo $form->submit(array('id'=>'submit','value'=>'submit'));
echo $form->close();
form.class.php
PHP:
<?php
class Form {
	/*
     * This method return the form element <form...
     * @param   array(id, name, class, onsubmit, method, action)
     * @return  string
     */
	public function create($params = array()) {
		$o = '<form';
		$o .= (isset($params['id']))        ? " id='{$params['id']}'"                       : '';
		$o .= (isset($params['name']))      ? " name='{$params['name']}'"                   : '';
		$o .= (isset($params['class']))     ? " class='{$params['class']}'"                 : '';
		$o .= (isset($params['onsubmit']))  ? " onsubmit='{$params['onsubmit']}'"           : '';
		$o .= (isset($params['method']))    ? " method='{$params['method']}'"               : '';
		$o .= (isset($params['action']))    ? " action='{$params['action']}'"               : '';
		$o .= '>';
		return $o;
	}

	public function close() {
		$o = '</form>';
		return $o;
	}

	/**
	 * text
	 * This method returns a input text element.
	 * @param   array(id, name, class, onclick, value, length, width, disable)
	 * @return  string
	 */
	public function text($params = array()) {
		$o = '<input type="text"';
		$o .= (isset($params['id']))        ? " id='{$params['id']}'"                       : '';
		$o .= (isset($params['name']))      ? " name='{$params['name']}'"                   : '';
		$o .= (isset($params['class']))     ? " class='form-input text {$params['class']}'" : " class='form-input text'";
		$o .= (isset($params['onclick']))   ? " onclick='{$params['onclick']}'"             : '';
		$o .= (isset($params['onkeypress']))? " onkeypress='{$params['onkeypress']}'"       : '';
		$o .= (isset($params['value']))     ? ' value="' . $params['value'] . '"'           : '';
		$o .= (isset($params['length']))    ? " maxlength='{$params['length']}'"            : '';
		$o .= (isset($params['width']))     ? " style='width:{$params['width']}px;'"        : '';
		$o .= (isset($params['disabled']))  ? " disabled='{$params['disabled']}'"           : '';
		$o .= ' />';
		return $o;
	}

	/**
	 * textBox
	 * This method creates a textarea element
	 * @param   array(id, name, class, onclick, columns, rows, disabled)
	 * @return  string
	 */
	public function textBox($params = array()) {
		$o = '<textarea';
		$o .= (isset($params['id']))        ? " id='{$params['id']}'"                           : '';
		$o .= (isset($params['name']))      ? " name='{$params['name']}'"                       : '';
		$o .= (isset($params['class']))     ? " class='form-input textbox {$params['class']}'"  : " class='form-input textbox'";
		$o .= (isset($params['onclick']))   ? " onclick='{$params['onclick']}'"                 : '';
		$o .= (isset($params['columns']))   ? " cols='{$params['columns']}'"                    : '';
		$o .= (isset($params['rows']))      ? " rows='{$params['rows']}'"                       : '';
		$o .= (isset($params['disabled']))  ? " disabled='{$params['disabled']}'"               : '';
		$o .= '>';
		$o .= (isset($params['value']))     ? $params['value']                                  : '';
		$o .= '</textarea>';
		$o .= (isset($params['label']))          ? "<label for='{$params['id']}'>{$params['label']}</label> "  : '';
		return $o;
	}

	/**
	 * select
	 * This method returns a select html element.
	 * It can be given a param called value which then will be preselected
	 * data has to be array(k=>v)
	 * @param   array(id, name, class, onclick, disabled)
	 * @return  string
	 */
	public function select($params = array()) {
		$o = '<select';
		$o .= (isset($params['id']))        ? " id='{$params['id']}'"                           : '';
		$o .= (isset($params['name']))      ? " name='{$params['name']}'"                       : '';
		$o .= (isset($params['class']))     ? " class='form-input select {$params['class']}'"   : " class='form-input select'";
		$o .= (isset($params['onclick']))   ? " onclick='{$params['onclick']}'"                 : '';
		$o .= (isset($params['width']))     ? " style='width:{$params['width']}px;'"            : '';
		$o .= (isset($params['disabled']))  ? " disabled='{$params['disabled']}'"               : '';
		$o .= '>';
		$o .= '<option value="0">Select</option>';
		if (isset($params['data']) && is_array($params['data'])) {
			foreach ($params['data'] as $k => $v) {
				if (isset($params['value']) && $params['value'] == $k) {
					$o .= "<option value='{$k}' selected='selected'>{$v}</option>";
				} else {
					$o .= "<option value='{$k}'>{$v}</option>";
				}
			}
		}
		$o .= '</select>';
		return $o;
	}

	/**
	 * checkboxMulti
	 * This method returns multiple checkbox elements in order given in an array
	 * For checking of checkbox pass checked
	 * Each checkbox should look like array(0=>array('id'=>'1', 'name'=>'cb[]', 'value'=>'x', 'label'=>'label_text' ))
	 * @param   array(array(id, name, value, class, checked, disabled))
	 * @return  string
	 */
	public function checkboxMulti($params = array()) {
		$o = '';
		if (!empty($params)) {
			$x = 0;
			foreach ($params as $k => $v) {
				$v['id'] = (isset($v['id']))        ? $v['id']                                          : "cb_id_{$x}_".rand(1000,9999);
				$o .= '<input type="checkbox"';
				$o .= (isset($v['id']))             ? " id='{$v['id']}'"                                : '';
				$o .= (isset($v['name']))           ? " name='{$v['name']}'"                            : '';
				$o .= (isset($v['value']))          ? " value='{$v['value']}'"                          : '';
				$o .= (isset($v['class']))          ? " class='form-input checkbox {$v['class']}'" : " class='form-input checkbox'";
				$o .= (isset($v['checked']))        ? " checked='checked'"                              : '';
				$o .= (isset($v['disabled']))       ? " disabled='{$v['disabled']}'"                : '';
				$o .= ' /> ';
				$o .= (isset($v['label']))          ? "<label for='{$v['id']}'>{$v['label']}</label> "  : '';
				$x++;
			}
		}
		return $o;
	}

	/**
	 * radioMulti
	 * This method returns radio elements in order given in an array
	 * For selection pass checked
	 * Each radio should look like array(0=>array('id'=>'1', 'name'=>'rd[]', 'value'=>'x', 'label'=>'label_text' ))
	 * @param   array(array(id, name, value, class, checked, disabled, label))
	 * @return  string
	 */
	public function radioMulti($params = array()) {
		$o = '';
		if (!empty($params)) {
			$x = 0;
			foreach ($params as $k => $v) {
				$v['id'] = (isset($v['id']))        ? $v['id']                                          : "rd_id_{$x}_".rand(1000,9999);
				$o .= '<input type="radio"';
				$o .= (isset($v['id']))             ? " id='{$v['id']}'"                                : '';
				$o .= (isset($v['name']))           ? " name='{$v['name']}'"                            : '';
				$o .= (isset($v['value']))          ? " value='{$v['value']}'"                          : '';
				$o .= (isset($v['class']))          ? " class='form-input radio {$v['class']}'"     : " class='form-input radio'";
				$o .= (isset($v['checked']))        ? " checked='checked'"                              : '';
				$o .= (isset($v['disabled']))       ? " disabled='{$v['disabled']}'"                : '';
				$o .= ' /> ';
				$o .= (isset($v['label']))          ? "<label for='{$v['id']}'>{$v['label']}</label> "  : '';
				$x++;
			}
		}
		return $o;
	}

	/**
	 * This method returns a button element given the params for settings
	 * @param   array(id, name, class, onclick, value, disabled)
	 * @return  string
	 */
	public function button($params = array()) {
		$o = '<input type="button"';
		$o .= (isset($params['id']))        ? " id='{$params['id']}'"                           : '';
		$o .= (isset($params['name']))      ? " name='{$params['name']}'"                       : '';
		$o .= (isset($params['class']))     ? " class='form-input button {$params['class']}'"   : " class='form-input button'";
		$o .= (isset($params['onclick']))   ? " onclick='{$params['onclick']}'"                 : '';
		$o .= (isset($params['value']))     ? " value='{$params['value']}'"                     : '';
		$o .= (isset($params['disabled']))  ? " disabled='{$params['disabled']}'"               : '';
		$o .= ' />';
		return $o;
	}

	/**
	 * This method returns a submit button element given the params for settings
	 * @param   array(id, name, class, onclick, value, disabled)
	 * @return  string
	 */
	public function submit($params = array()) {
		$o = '<input type="submit"';
		$o .= (isset($params['id']))        ? " id='{$params['id']}'"                           : '';
		$o .= (isset($params['name']))      ? " name='{$params['name']}'"                       : '';
		$o .= (isset($params['class']))     ? " class='form-input button {$params['class']}'"   : " class='form-input submit'";
		$o .= (isset($params['onclick']))   ? " onclick='{$params['onclick']}'"                 : '';
		$o .= (isset($params['value']))     ? " value='{$params['value']}'"                     : '';
		$o .= (isset($params['disabled']))  ? " disabled='{$params['disabled']}'"               : '';
		$o .= ' />';
		return $o;
	}

	/**
	 * This method returns a hidden input elements given its params
	 * @param   array(id, name, class, value)
	 * @return  string
	 */
	public function hidden($params = array()) {
		$o = '<input type="hidden"';
		$o .= (isset($params['id']))        ? " id='{$params['id']}'"                           : '';
		$o .= (isset($params['name']))      ? " name='{$params['name']}'"                       : '';
		$o .= (isset($params['class']))     ? " class='form-input hidden {$params['class']}'"   : " class='form-input hidden'";
		$o .= (isset($params['value']))     ? " value='{$params['value']}'"                     : '';
		$o .= ' />';
		return $o;
	}
}
 
Discussioni simili
Autore Titolo Forum Risposte Data
M [cerco webmaster] sito web da modificare Offerte e Richieste di Lavoro e/o Collaborazione 0
G Come modificare un pdf in php PHP 1
napuleone modificare il valore dellascroll bar di webkit HTML e CSS 8
Shyson Modificare codice e creare link PHP 0
J Modificare panorami 360 ps 2020 Photoshop 0
napuleone modificare il contenitore di un div Javascript 2
napuleone modificare il contenitore di un div Javascript 1
D modificare questo codice per inserimento in text e non in tabella jQuery 1
C modificare sito in locale con dreamWeaver HTML e CSS 3
T Modificare ruolo utenti in fase di registrazione E-Commerce 0
M modificare un file .XML da database Sql PHP 13
S Modificare intestazione documento pdf con LO Draw Linux e Software 0
felino Radio button e Bootstrap: modificare il colore di default! HTML e CSS 1
Shyson Modificare funzione php PHP 15
W Modificare il Type di un Input box in javascript ovunque si trovi Javascript 0
F Modificare report di etichette di access con vba MS Access 0
D [PHP] Tabella: modificare direttamente i valori PHP 6
P [Woocommerce] Modificare il Bottone Checkout di Woocommerce in base alla categoria di prodotto E-Commerce 10
Q impossibile modificare un file ....... C/C++ 2
C [HTML] modificare la scritta della copyright HTML e CSS 2
G [PHP] MODIFICARE DATI TABELLA CONTESTUALMENTE PHP 6
Y [PHP] [HTML] Modificare i quadranti PHP 1
A [PHP] Modificare campo database in base alla scelta dell'utente PHP 2
W Non riesco più a modificare i dati di una tabella da phpmyadmin MySQL 0
V [WordPress] Come modificare link in tasto menu css WordPress 21
Y Modificare script php PHP 5
G Fullcalendar: modificare colore testo, backgroup e bordi per tutti gli eventi jQuery 3
paloppa Bootstrap.min.css modificare il file HTML e CSS 6
Merlina3377 [PHP] modificare file su form immagine thump PHP 1
G [HTML] Modificare ordine dei div in mobile responsive HTML e CSS 5
pfranco [PHP] Modificare pagina web online PHP 9
Shyson Modificare codice jQuery 0
A [Javascript] modificare il contenuto della barra indirizzi di un browser Javascript 1
asevenx modificare lista elementi togliendo l'elemento selezionato jQuery 1
Kolop "Modificare HTML" HTML e CSS 13
K [ASP.Net] Utilizzare e modificare dati linq ASP.NET 0
G Modificare navbar in base allo scroll jQuery 6
R [Photoshop] Modificare luminosità dei bordi in una foto Photoshop 2
A come modificare gli elementi di una lista e gli editText? Sviluppo app per Android 0
A modificare .jar con classe personalizzata Java 9
Mer556 BLOCCATO nel modificare un sito HTML e CSS 3
T modificare un template html5 HTML e CSS 6
B Modificare sorgente di pagina HTML e CSS 10
napuleone Modificare attributi di una classe con js Javascript 2
C modificare un rss con php PHP 2
L Modificare dati tabella mysql PHP 2
P modificare mappa sito Javascript 0
P modificare mappa sito Javascript 0
X come modificare paginazione del tutorial PHP 0
A modificare posizione plug in almeno credo WordPress 3

Discussioni simili