[GastForen Programmierung/Entwicklung PHP und MySQL Bilder im User Profil uploaden

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Bilder im User Profil uploaden

kleiner
Beiträge gesamt: 3

2. Feb 2005, 02:09
Beitrag # 1 von 9
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, ich habe ein Problem mit dem User Profil.
Es ist bereits schon ein Bild Upload Feld drin, was auch geht.

Jetzt sollen noch 4 von den (Dursuchen) Feldern dazu.
Hier mal ein Bild http://web254.bces-1445.de/Profil.jpg

Die Platzhalter habe ich schon eingefügt
Kann mir jemand evt. Helfen und den Anfang machen???

Vielen Dank
MfG Andre

Hier mal das Script:

<table style='margin: 10px;' width='95%'>
<?php
include("vars.php");
if($action2=="")
{
if($search!="@"){
$select="name LIKE '$search%'";
}
if ($search=="@")
{
$select="name < 'a%'";
}
if($order==""){
$by="asc";
$order="id";
}
$alpha=array("@","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z");
$memberqry2 = mysql_query("SELECT * FROM cms_user where $select order by id asc");
$nums=mysql_num_rows($memberqry2);
$site=$site*30;
$memberqry = mysql_query("SELECT * FROM cms_user where $select order by $order $by Limit $site,30");

echo "<tr><td colspan='4'><table width='100%'><tr>";
$x=0;
while($x<count($alpha)){
echo "<td><a href='$php_self?action=$action&search=$alpha[$x]&order=$order&by=$by'>$alpha[$x]</a></td>";
$x++;
}
echo"</tr></table></td></tr>
<tr>
<td witdh='10%'><font class='headline'>ID <a href='$php_self?action=$action&search=$search&order=id&by=asc'><img src='images/up.gif' border='0'/></a> <a href='$php_self?action=$action&search=$search&order=id&by=desc'><img src='images/down.gif' border='0'/></a></font></td>
<td><font class='headline'>Name <a href='$php_self?action=$action&search=$search&order=name&by=asc'><img src='images/up.gif' border='0'/></a> <a href='$php_self?action=$action&search=$search&order=name&by=desc'><img src='images/down.gif' border='0'/></a></font></td>
";
if($status=="admin"){
echo"<td></td>";
}
echo "</tr>";
while($user=mysql_fetch_array($memberqry)){
echo "<tr>
<td witdh='10%'>$user[id]</td>
<td><a href='$php_self?action=$action&action2=user_show_profile&userid=$user[id]'>$user[name]</a></td>";
if($status=="admin"){
echo"<td><a href='$php_self?action=$action&action2=user_edit&userid=$user[id]'><img src='images/edit.gif' border='0'/></a></td>
<td><a href='$php_self?action=$action&action2=user_del&userid=$user[id]'><img src='images/delete.gif' border='0'/></a></td>";
}
}
if($nums<1)
{
echo "<tr><td colspan='4'>Keine Suchergebnisse.</td></tr>";
}
echo "</tr><tr><td>&nbsp;</td></tr><tr><td>";
$b=0;
if($nums>30){
echo "Seite: ";

while($b<$nums/30){
$c=$b+1;
if($site/30==$b){
echo $b+1;
}
else{
echo " <a href='$php_self?action=$action&site=$b&search=$search&order=$order&by=$by'>$c</a>";
}
$b++;
}
echo "</td></tr>";
}}
if(!$action2){
echo "<form method='post' action='$php_self?action=member'>
<tr>
<td colspan='4'><input class='input' type='text' name='search' size='20' value='name'></td>
</tr>
<tr>
<td>
<input type='image' src='images/go.gif'>
</form>
</td></tr>";
}
$parth = $_SERVER['PHP_SELF'];
$path_parts = pathinfo($parth);
$basename=$path_parts["basename"];
if($basename!="index.php"){
die();
}
//user löschen
if($action2=="user_del" and $status=="admin"){
if(!$del){
echo "<tr><td>User wirklich löschen?<br></td></tr>
<tr>
<td><a href='$php_self?action=$action&action2=user_del&del=true&userid=$userid'>Ja, löschen.</a></td></tr>
<tr>
<td><a href='$php_self?action=$action'>Nein nicht löschen.</a></td></tr>";
}
if($del=="true")
{
$delete=mysql_query("DELETE FROM cms_user WHERE id='$userid'");
if($delete)
{
echo "<tr>
<td>User gelöscht</td></tr>
<tr>
<td><a href='$php_self?action=$action'>Zur Userübersicht</a></td></tr>";
}
}
}
//user löschen
//user edit
if($action2=="user_edit"){
if($status=="admin" or !$userid or $userid==$check[id])
{
if($_GET[edit2]=="true")
{
if($_POST[avaselect]==1){
if (strpos($_FILES['ava_file']['name'], ".gif")){
$extend=".gif";
}
if (strpos($_FILES['ava_file']['name'], ".jpg"))
{
$extend=".jpg";
}
if (strpos($_FILES['ava_file']['name'], ".png"))
{
$extend=".png";
}
if (strpos($_FILES['ava_file']['name'], ".jpeg"))
{
$extend=".jpeg";
}
echo $_FILES['ava_file']['name'];
echo "$_FILES[ava_file]) and ".filesize($_FILES[ava_file][tmp_name])."<=$layout[avasize] and $extend!=";
if(isset($_FILES['ava_file']) and filesize($_FILES['ava_file']['tmp_name]'])<=$layout[avasize] and $extend!="")
{
$oldfile="images/ava/".$check[avaupfile];
$time=microtime();
$session=md5($time);
$move=@move_uploaded_file($_FILES['ava_file']['tmp_name'], "images/ava/".$session.$extend);
$update=mysql_query("update cms_user set ava_url='', avaupfile='$session$extend', avaselect='$_POST[avaselect]' where id=$userid");
}
else
{
echo "Bitte geben Sie eine gültige Datei an!";
}
if ($move)
{
if(is_file($oldfile) and file_exists($oldfile)){
unlink($oldfile);
}
echo "Upload erfolgreich.";
}
else
{
echo "Datei konnte nicht hochgeladen werden. Möglicherweise ist die Datei zu groß.";
}
}
else
{
$update=mysql_query("update cms_user set ava_url='$_POST[ava_url]', avaupfile='', avaselect='$_POST[avaselect]' where id=$userid");
if(is_file("images/ava/".$check[avaupfile]) and file_exists("images/ava/".$check[avaupfile])){
unlink("images/ava/".$check[avaupfile]);
}
}
}

if($edit=="true")
{
if(!$mail)
{
echo "Bitte alle Daten Korrekt angeben";
}
else
{
if($pw)
{
$pw=md5("$pw");
$pass="password='$pw', ";
}
if($status=="admin")
{
$nameup="name='$name', ";
$savefree="free='$free', ";
$userstatus="status='$rights_sel', ";
}
$update=mysql_query("update cms_user set $nameup $pass $savefree $userstatus mail='$mail', hobbies='$hobbies', homepage='$homepage', icq='$icq', yim='$yim', aim='$aim', msn='$msn', ava_url='$ava_url',auto='$_POST[auto]' where id=$userid");
if($update)
{
echo "<tr><td>Update erfolgreich</td></tr>
<tr><td><a href='$php_self?action=$action&action2=user_show_profile&userid=$userid'>Profil ansehen</a></td></tr>
<tr><td>&nbsp;</td></tr>";
}
}
}
if(!$userid)
{
$userid=$check[id];
}
$userqry=mysql_query("SELECT * FROM cms_user WHERE id='$userid'");
$user=mysql_fetch_array($userqry);
?>
<form method="POST" action="<? echo "$php_self?action=$action&action2=$action2&edit=true&userid=$userid"; ?>">
<?php
if($status=="admin")
{
$checked="";
if($user[free]==1)
{
$checked="checked";
}
echo"<tr>
<td width='50%'>Rechte</td>
<td width='50%'><select size='1' name='rights_sel'>";
$rightqry=mysql_query("SELECT * FROM cms_rights order by pos asc");
while($right=mysql_fetch_array($rightqry)){
$selected="";
if($right[name]==$user[status]){
$selected="selected";
}
echo "<option $selected value='$right[name]'>$right[name]</option>";
}
echo"</select></td>
</tr>";
?>
<tr>
<td width="50%" height="22">Frei:</td>
<td width="50%" height="22"><input type="checkbox" <?php echo $checked; ?> value="1" name="free" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">Nickname*</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[name]; ?>" name="name" size="20"></td>
</tr>
<? }
else
{
echo "<tr>
<td width='50%'>Nickname:</td>
<td width='50%'>$user[name]</td>
</tr>";
} ?>
<tr>
<td width='50%'>ID</td>
<td width='50%'><? echo $user[id]; ?></td>
</tr>
<tr>
<td width="50%" height="22">neues Passwort (nur bei Passwortwechsel)</td>
<td width="50%" height="22"><input type="password" name="pw" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">E-Mail*</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[mail]; ?>" name="mail" size="20"></td>
</tr>
<? if($layout[avaup]!=1){ ?>
<tr>
<td width="50%" height="22">Avatar <?php echo "(".$layout[avax]."x".$layout[avay]." Pixel)"; ?></td>
<td width="50%" height="22"><input type="text" value="<? echo $user[ava_url]; ?>" name="ava_url" size="20"></td>
</tr>
<? } ?>
<tr>
<td width="50%" height="22">Hobbys</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[hobbies]; ?>" name="hobbies" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">Homepage</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[homepage]; ?>" name="homepage" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">ICQ</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[icq]; ?>" name="icq" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">YIM</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[yim]; ?>" name="yim" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">AIM</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[aim]; ?>" name="aim" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">MSN</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[msn]; ?>" name="msn" size="20"></td>
</tr>
<tr>
<tr>
<td width="50%" height="22">Auto</td>
<td width="50%" height="22"><input type="text" value="<? echo $user[auto]; ?>" name="auto" size="20"></td>

<td width="100%" height="22" colspan="2"> <input type="submit" value="Ändern" name="send_register"></p>
</form></td>
<td width="100%" height="22" colspan="2">&nbsp;</td>
</tr>
<tr>
<td width="100%" height="22" colspan="2">*Pflichtfelder</td>
</tr>
<?
if($layout[avaup]==1){
if($user[avaselect]==1)
{
$sel1="checked";
$sel2="";
}
else
{
$sel2="checked";
$sel1="";
}
echo "<form method=\"POST\" action=\"$php_self?action=$action&action2=$action2&edit2=true&userid=$userid\" enctype=\"multipart/form-data\">
<tr>
<td colspan=\"2\">Avatar bearbeiten (Profil ändert sich nicht)</td>
</tr>
<tr>
<td colspan=\"2\">Avatar (Link,".$layout[avax]."x".$layout[avay]." Pixel): <input type=radio name=avaselect $sel2 value=0></td>
</tr>
<td colspan=\"2\">Avatar (hochladen, max ".$layout[avax]."x".$layout[avay]." Pixel, ".$layout[avasize]."Byte): <input type=radio $sel1 name=avaselect value=1></td>
</tr>
<tr>
<td colspan=\"2\"><input name=\"ava_file\" type=\"file\"></td>
</tr>
<tr>
<td colspan=\"2\"><input name=\"send\" type=\"submit\" value=\"ändern\"></td>
</tr></form>";

}

}
}
//user edit
//user anzeigen

if($action2=="user_show_profile"){
if(!$userid)
{
$userid=$check[id];
}
if($userid){
$userqry=mysql_query("SELECT * FROM cms_user WHERE id='$userid'");
}
if($user)
{
$userqry=mysql_query("SELECT * FROM cms_user WHERE name='$user'");
}
$user=mysql_fetch_array($userqry);
?>
<?php
$date=date("d.m.Y",$user[reg_time]);
if($user[free]!=1)
{
echo "<tr><td>&nbsp;</td><td colspan='2'>User wurde gesperrt.</td></tr>";
}
if($user[ava_url]!="")
{
$ava=$user[ava_url];
}
elseif($user[avaupfile]!="")
{
$ava="images/ava/".$user[avaupfile];
}
else
{
$ava="images/avatar.gif";
}
if(file_exists("$ava")){
$imagesize=getimagesize($ava);
}
if ($imagesize[0]>$layout[avax] or $imagesize[1]>$layout[avay]){
$size="width='$layout[avax]' height='$layout[avay]'";
}
echo "<tr>
<td rowspan='5'><img src='$ava' border='0' $size /></td>
<td width='50%'>Registrierdatum:</td>
<td width='50%'>$date</td>
</tr>";
$comments=mysql_query("SELECT * FROM cms_comments where author='$user[name]'");
$countcomments=mysql_num_rows($comments);
$comments=mysql_query("SELECT * FROM cms_votec where author='$user[name]'");
$countcomments=$countcomments+mysql_num_rows($comments);
$comments=mysql_query("SELECT * FROM cms_addc where author='$user[name]'");
$countcomments=$countcomments+mysql_num_rows($comments);
?>
<tr>
<td width='50%'>Nickname:</td>
<td width='50%'><?php echo $user[name]; ?></td>
</tr>
<tr>
<td width='50%'>ID:</td>
<td width='50%'><? echo $user[id]; ?></td>
</tr>
<tr>
<td width='50%'>Kommentare</td>
<td width='50%'><? echo $countcomments; ?></td>
</tr>
<tr>
<td width="50%" height="22">Hobbys:</td>
<td width="50%" height="22"><? echo $user[hobbies]; ?></td>
</tr>
<tr>
<td align='center'><? echo $user[status]; ?></td>
<td width="50%" height="22">Homepage:</td>
<td width="50%" height="22"><a href="<?
if(substr("$user[homepage]",0,7)!="http://"){
echo "http://";
}
echo $user[homepage]; ?>" target='_blank'><? echo $user[homepage]; ?></a></td>
</tr>
<tr>
<td>&nbsp;</td>
<td width="50%" height="22">ICQ:</td>
<td width="50%" height="22"><? echo $user[icq]; ?></td>
</tr>
<tr>
<td>&nbsp;</td>
<td width="50%" height="22">YIM:</td>
<td width="50%" height="22"><? echo $user[yim]; ?></td>
</tr>
<tr>
<td>&nbsp;</td>
<td width="50%" height="22">AIM:</td>
<td width="50%" height="22"><? echo $user[aim]; ?></td>
</tr>
<tr>
<td>&nbsp;</td>
<td width="50%" height="22">MSN:</td>
<td width="50%" height="22"><? echo $user[msn]; ?></td>
</tr>
<td>&nbsp;</td>
<td width="50%" height="22">Auto:</td>
<td width="50%" height="22"><? echo $user[auto]; ?></td>
</tr>
</tr>
<?
if ($status=="admin"){?> <tr>
<td>&nbsp;</td>
<td width="50%" height="22">E-Mail:</td>
<td width="50%" height="22"><? echo $user[mail]; ?></td>
</tr>
<tr>


<td rowspan='5'><img src='$bild1' border='0' $size /></td>
<td rowspan='5'><img src='$bild2' border='0' $size /></td>
<td rowspan='5'><img src='$bild3' border='0' $size /></td>
<td rowspan='5'><img src='$bild4' border='0' $size /></td>
<? }
//user anzeigen
}
?>
X

Bilder im User Profil uploaden

Foggy
Beiträge gesamt: 48

2. Feb 2005, 21:50
Beitrag # 2 von 9
Beitrag ID: #141555
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Sorry aber so was schaut sich wohl kaum Jemand an :(
Ich hab ja mal den Versuch gemacht deinen Code in mein Editor einzufügen...
...aber was herrvorkam war ja Grauenerregend
Also wo genau liegt denn dein Problem?
Kannst du keine neuen Upload Felder im Formular erstellen?
Oder bereitet dir dessen Verarbeitung Kopfschmerzen?
Rück schon raus damit ;)


als Antwort auf: [#141229]

Bilder im User Profil uploaden

mtk-flo
Beiträge gesamt: 11

3. Feb 2005, 09:34
Beitrag # 3 von 9
Beitrag ID: #141625
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Stell mal genaue Frage... weil der code ist echt unübersichtlich ... wenn du klare und prizisen fragen stellst, bekommst du her leichter eine antwort und ich sprech da aus erfahrung =)


als Antwort auf: [#141229]

Bilder im User Profil uploaden

kleiner
Beiträge gesamt: 3

4. Feb 2005, 02:34
Beitrag # 4 von 9
Beitrag ID: #141963
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Kannst du keine neuen Upload Felder im Formular erstellen?

Ja, genau das ich meine Problem. Immer wenn ich versuche die Zeilen zu kopieren, läuft das sript nicht mehr.
Kann mir evt mal jemand einen Anfang machen, und mir erstmal ein Upload Feld hinzufügen...

Gruß Andre


als Antwort auf: [#141229]

Bilder im User Profil uploaden

Foggy
Beiträge gesamt: 48

5. Feb 2005, 09:52
Beitrag # 5 von 9
Beitrag ID: #142404
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
<input name=\"ava_file\" type=\"file\">


als Antwort auf: [#141229]

Bilder im User Profil uploaden

Foggy
Beiträge gesamt: 48

5. Feb 2005, 09:53
Beitrag # 6 von 9
Beitrag ID: #142405
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Aber viel komplizierter wird dessen Verarbeitung
Da stösst du wohl endgültig an deine Grenzen...
...also lern besser die Grundlagen ;)


als Antwort auf: [#141229]

Bilder im User Profil uploaden

kleiner
Beiträge gesamt: 3

5. Feb 2005, 11:19
Beitrag # 7 von 9
Beitrag ID: #142417
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hi Foggy ;)

Jetzt habe ich schon mal 4 Uload Felder so eingefügt.
Nur leider ladet er nichts dadrüber hoch???


als Antwort auf: [#141229]

Bilder im User Profil uploaden

Kusi
Beiträge gesamt: 1398

6. Feb 2005, 11:27
Beitrag # 8 von 9
Beitrag ID: #142543
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo
Wie Froggy oben erwähnt hat, jetzt kommt die Verarbeitung der Bilder. Dazu muss jedes Bild mit move_upload_file bearbeitet werden. Ich hoffe, du hast auch verschiedene Namen für die Input Felder verwendet.
Schau mal da:
http://btmdx1.mat.uni-bayreuth.de/.../ss2002/node1430.php

Gruss
Kusi

http://www.k-k.ch
Grafik, Layout, Webdesign


als Antwort auf: [#141229]

Bilder im User Profil uploaden

Jeyenne
Beiträge gesamt: 13

9. Feb 2005, 16:34
Beitrag # 9 von 9
Beitrag ID: #143540
Bewertung:
(1997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, ich hab mal kurz ne Funktion zum uploaden geschrieben:
function f_upload_picture($bild, $folder)
{
$p_name = "bild_";
$p_number = 1;
$p_folder = $folder;
$p_allowed_types = array "image/pjpeg", "image/jpeg", "image/jpg");
if(in_array($_FILES["$bild"]['type'], $p_allowed_types))
{
$picture_name = $p_name.$p_number.".jpg";
if (file_exists("$p_folder/$picture_name"))
{
do
{
$p_number++;
$picture_name= $p_name.$p_number.".jpg";
}
while (file_exists("$p_folder/$picture_name"));
}
if(!copy($_FILES["$bild"]['tmp_name'],"$p_folder/$picture_name"))
{
return false;
}
else
{
$picture_no = array($p_folder, $picture_name);
$thumbnail = f_make_thumbnail($picture_no);
$pa_picture = array("picture" => "$picture_no", "thumbnail" => "$thumbnail");
return $pa_picture;
}
}
else
{
return "jpg";
}
}

Bei dieser Funktion musst du eine Variable mit dem Bildpfad und dem Bildfolder mitgeben. Rückgabewert ein Array, welches den neuen Bildpfad beinhaltet aufgeteilt ind folder und bild innerhalb eines zusätzlichen Arrays und den thumbnailpfad.
Ebenso werden die Bilder automatisch als Thumbnails verkleinert durch diese funktion:

function f_make_thumbnail($picture)
{
if(!is_array($picture))
{
return false;
}
else
{
$p_size_original=getimagesize("$picture[0]"."/"."$picture[1]");
$p_width = $p_size_original[0];
$p_height = $p_size_original[1];
$p_new_width = 80;
$p_new_height = intval($p_height * $p_new_width / $p_width);
$p_old_picture = ImageCreateFromJPEG("$picture[0]"."/"."$picture[1]");
$p_new_picture = ImageCreateTrueColor($p_new_width,$p_new_height);
ImageCopyResized($p_new_picture, $p_old_picture, 0, 0, 0, 0, $p_new_width, $p_new_height, ImageSX($p_old_picture), ImageSY($p_old_picture));
ImageJPEG($p_new_picture, "$picture[0]"."/"."thumbnail_"."$picture[1]");
$p_new_picture = "thumbnail_".$picture[1];
return $p_new_picture;
}
}

Diese funktion erstellt thumbnails der weite 80px....
________________________________
mfg Jeyenne


als Antwort auf: [#141229]
(Dieser Beitrag wurde von Jeyenne am 9. Feb 2005, 16:39 geändert)
X