Jump to content
php.lv forumi

profila lapas izveide


MārisL

Recommended Posts

Pats neesmu tā īsti mēģinājis veidot, jo i-netā neatradu nevienu kārtīgu tut'u un līdz ar to nesaprotu ar ko pat sakt.

Šoreiz mans jautājums būs šāds:

 

Vai kāds ir veidojis vai ir mēģinājis veidot profile.php (profila lapu)?, kur būtu iespējams lietotājam, kurš ir ielogojies mainīt savas opcijas, kas līdz ar to samainas arī iekšs db.

Edited by MārisL
Link to comment
Share on other sites

http://paste.php.lv/6555

 

Kā izveidot, lai tikai ielogojies lietotājs varētu mainīt tikai savu profilu.

 

 

-----------------

 

 

Ja pareizi saprotu, tad isset ir tas pats, kas empty f-ja.

Bet ja man nav nepieciešams lai lauciņā kaut kas būtu rakstīts, kas jādara tad?

Noņemot isset nost uzreiz izlec errors.

 

Lieta tāda, ka es nevēlos, lai obligāti būtu jaaizpilda lauciņš dzivesvieta, vards, majaslapa...

Edited by MārisL
Link to comment
Share on other sites

isset() neko nedomā. pamēģini iztulkot - ir iesetots, ja mainīgais ir tukšs, bet tomēr ir, tātad viņš ir iesetots.

 

wtf?

if(isset($_POST['lietotajvards_labots']) && $_POST['lietotajvards_labots']
and isset($_POST['epasts_labots']) && $_POST['epasts_labots']
and isset($_POST['vards_labots']) && $_POST['vards_labots']
and isset($_POST['dzivesvieta_labots']) && $_POST['dzivesvieta_labots']
and isset($_POST['majaslapa_labots']) && $_POST['majaslapa_labots']
and $_GET['lietotaja_id']
and preg_match('/^[0-9]*$/i', $_GET['lietotaja_id']))

 

es gan formā iebāztu kautkādu hidden lauku, pēc kura arī skatītos vai forma tikusi nosubmitēta un tad arī pārējās darbības:

if(isset($_POST['action']) && $_POST['action']=="labot_profilu")
{
 foreach($_POST['profile'] as $key=>$value){ $columns.=",".$key."='".mysql_real_escape_string(htmlspecialchars($value))."'" }
 $columns=substr($columns,1);
 mysql_query("UPDATE `lietotaji` SET ".$columns." WHERE id='".intval($_GET['lietotaja_id'])."'");
}

 

un viss kods gatavs, vienīgi tos laukus, kur tiek ievadīti lietotāja dati liku atsevišķā masīvā <input type="text" name="profile[field]" />

Link to comment
Share on other sites

Rindiņas 23-43:

#
if(isset($_POST['lietotajvards_labots']) && $_POST['lietotajvards_labots']
#
and isset($_POST['epasts_labots']) && $_POST['epasts_labots']
#
and isset($_POST['vards_labots']) && $_POST['vards_labots']
#
and isset($_POST['dzivesvieta_labots']) && $_POST['dzivesvieta_labots']
#
and isset($_POST['majaslapa_labots']) && $_POST['majaslapa_labots']
#
and $_GET['lietotaja_id']
#
and preg_match('/^[0-9]*$/i', $_GET['lietotaja_id']))
#

#
{
#

#
$lvards = quote_smart($_POST['lietotajvards_labots']);
#
$epasts = quote_smart($_POST['epasts_labots']);
#
$vards = quote_smart($_POST['vards_labots']);
#
$dvieta = quote_smart($_POST['dzivesvieta_labots']);
#
$mlapa = quote_smart($_POST['majaslapa_labots']);
#

#
mysql_query("UPDATE lietotaji SET lietotajvards = $lvards, epasts = $epasts, vards = $vards, dzivesvieta = $dvieta, majaslapa = $mlapa WHERE id = {$_GET['lietotaja_id']}");
#

#
echo "<br /><br />Profils ir veiksmīgi labots.<br />";
#

#
}

es pārveidotu +- šādi:

$vaicajums = '';
if(isset($_POST['lietotajvards_labots']) && $_POST['lietotajvards_labots']){
//Vai tiešām lietotājvārds jāļauj labot?????
$vaicajums .= ' lietotajvards = ' .  quote_smart($_POST['lietotajvards_labots']) . ', ';
}
if(isset($_POST['epasts_labots']) && $_POST['epasts_labots']){
$vaicajums .= ' epasts = '. quote_smart($_POST['epasts_labots']) .', ';
}
if(isset($_POST['vards_labots']) && $_POST['vards_labots']){
$vaicajums .= ' vards = ' . quote_smart($_POST['vards_labots'] . ', ';
}
//un tā tālāk par katru no padotajiem...
if('' != $vaicajums){
$vaicajums = substr($vaicajums, 0, -2); // Noņem pēdējo ', '
mysql_query("UPDATE lietotaji SET $vaicajums WHERE id = {$_GET['lietotaja_id']}");
#

#
echo "<br /><br />Profils ir veiksmīgi labots.<br />";
#

#
}

Nu ideja skaidra, manuprāt...

Link to comment
Share on other sites

×
×
  • Create New...