4images Forum & Community

4images Issues / Ausgaben => Discussion & Troubleshooting => Topic started by: tansamalaja on October 25, 2006, 11:18:34 AM

Title: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 25, 2006, 11:18:34 AM
Ich möchte gerne auf der Upload-Seite ganz unten ein Kästchen haben,
dass die User vor dem Upload anklicken müssen und somit die Einhaltung
der Bildkriterien noch einmal extra bestätigen.

Mit der Suche habe ich nichts passendes gefunden, sollte ich was über-
sehen haben, wäre ich für einen kleinen Hinweis dankbar...
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: Acidgod on October 25, 2006, 01:38:37 PM
Wieso machst Du es nicht mit JavaScript?

Musst Du nur das member_uploadform.html modifizieren...
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 25, 2006, 04:25:56 PM
Also ich habe die Checkbox samt Text eingefügt, doch nach dem Anklicken bleibt der Button weiter
disabled, wo muss ich denn den Script-Teil einfügen?
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: Acidgod on October 25, 2006, 04:29:28 PM
Verstehe ich nicht...

Wie wäre es mit einem Testzugang usw per PN?
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 25, 2006, 05:36:00 PM
Also grundsätzlich funktioniert die Checkbox.

Aber nur wenn ich "Javascript" und "Form" ganz am Ende der member_upload.html
plaziere, also noch nach dem </form>

Plaziere ich es davor, bekomme ich einen Fehler:
'document.agb.senden' ist Null oder kein Objekt

Die von mir geänderte member_upload.html habe ich mal angehangen.

Wenn du den Fehler findest, wäre es schön. Ich möchte natürlich nicht den Extra-Button
haben, sondern es soll sich auf den "Abschicken"-Button beziehen...
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: honda2000 on October 25, 2006, 05:56:41 PM
so gehts nicht??
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 25, 2006, 06:37:03 PM
Doch, so funzt es. Kannst du es jetzt auch noch so coden,
dass der zusätzliche Button weg ist und sich die ganze
Funktion auf den "uploadbutton" bezieht?
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: honda2000 on October 25, 2006, 06:54:07 PM
meinst du so???

...mit dem "zusätlichen Button" ?
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 25, 2006, 09:08:34 PM
Ich möchte gerne unter den Angaben fürs Bild und über den beiden Buttons
für "Abschicken" und "Zurücksetzen" die Check-Box haben, die man anwählen muss,
damit der Button "Abschicken" nicht mehr disabled ist.

Den Button "Weiter" benötige ich nicht. So wie es momentan ist, gibt es auch wieder
eine Fehlermeldung:
'undefined' ist Null oder kein Objekt
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: Acidgod on October 26, 2006, 09:37:53 AM
1. JavaScript nicht in das Template schreiben, nehmt dafür eine externe *.js Datei
2. onSubmit sollte das JavaScript die Checkbox überprüfen und nicht onClick
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: honda2000 on October 26, 2006, 12:12:58 PM
mit dem "extern" hast du erst einmal 100% recht, denn die meisten JS werden im header vorgeladen!

dennoch, das kommplette Script ist ja nicht vollständig und hier in dem Fall nur irgendetwas aus dem Internet zusammengestückeltes!

es fehlt die kompltte Schleife, nix passiert bei nicht-anklicken, der Checkbox, zumindest müsste ein Alert-Fenster kommen

bezieht sich der Teil des Scriptes auf den "zusätlichen Button" und nicht auf den "Senden-Button"

>>> wenn ich AGB´s aktepieren soll, will ich sie per onClick erst einmal lesen
(also fehlt der Link auch noch!!!)

mit anderen Worten:
das komplette Script muss umgeschrieben werden


Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: Acidgod on October 26, 2006, 01:41:20 PM
Testet dies doch mal:
Code: [Select]
<script language="JavaScript" type="text/javascript">
<!--
var onechecked=false;
function checkBoxes()
{
var all=document.forms[0];
for(var x = 0; x < all.length; x++)
{
if (all.elements[x].checked == true)
{
onechecked=true;
}
}
if(onechecked == false)
{
alert('Kein Formularfeld angewaehlt!');
return false;
}
}
//-->
</script>

Code: [Select]
<form method="post" action="{url_member}" enctype="multipart/form-data" onsubmit="return checkBoxes(); uploadbutton.disabled=true;">
  <input type="hidden" name="action" value="uploadimage" />
  {if cat_id}<input type="hidden" name="cat_id" value="{cat_id}" />{endif cat_id}
  <table width="100%" border="0" cellspacing="0" cellpadding="1">
    <tr>
      <td valign="top" class="head1">
        <table width="100%" border="0" cellpadding="4" cellspacing="0">
          <tr>
            <td colspan="2" valign="top" class="head1">{lang_user_upload}</td>
          </tr>
          <tr>
            <td class="row1"><b>{lang_category}</b></td>
            <td class="row1">{cat_name}</td>
          </tr>
          <tr>
            <td class="row2" valign="top">
  <b>{lang_media_file}</b><br />
  <span class="smalltext">
  {lang_max_filesize}<b>{max_media_filsize}</b><br />
  {lang_max_imagewidth}<b>{max_media_imagewidth}</b><br />
  {lang_max_imageheight}<b>{max_media_imageheight}</b><br />
  </span> </td>
            <td class="row2">
              <b>Upload:</b><br />
  <input type="file" name="media_file" class="input" /><br />
  <b>URL:</b><br />
  <input type="text" name="remote_media_file"  size="30" value="{remote_media_file}" class="input" /><br />
  <span class="smalltext"><b>{lang_allowed_file_types}</b> {allowed_media_types}</span>            </td>
          </tr>
          <tr>
            <td class="row1" valign="top">
  <b>{lang_thumb_file}</b><br />
  <span class="smalltext">
  {lang_max_filesize}<b>{max_thumb_filsize}</b><br />
  {lang_max_imagewidth}<b>{max_thumb_imagewidth}</b><br />
  {lang_max_imageheight}<b>{max_thumb_imageheight}</b><br />
  </span> </td>
            <td class="row1">
              <b>Upload:</b><br />
  <input type="file" name="thumb_file" class="input" /><br />
  <b>URL:</b><br />
  <input type="text" name="remote_thumb_file"  size="30" value="{remote_thumb_file}" class="input" /><br />
  <span class="smalltext"><b>{lang_allowed_file_types}</b> {allowed_thumb_types}</span>            </td>
          </tr>
          <tr>
            <td class="row2"><b>{lang_image_name}</b></td>
            <td class="row2"><input type="text" name="image_name"  size="30" value="{image_name}" class="input" /></td>
          </tr>
          <tr>
            <td class="row1" valign="top"><b>{lang_description}</b></td>
            <td class="row1">
              <textarea name="image_description" cols="30" class="textarea" rows="10" wrap="VIRTUAL">{image_description}</textarea>            </td>
          </tr>
          <tr>
            <td class="row2" valign="top"><b>{lang_keywords}</b></td>
            <td class="row2">
              <textarea cols="30" class="textarea" rows="10" wrap="VIRTUAL" name="image_keywords">{image_keywords}</textarea>            </td>
          </tr>
{if captcha_upload}
          <tr>
            <td class="row1" valign="top"><b>{lang_captcha}</b></td>
            <td class="row1">
  <a href="javascript:new_captcha_image();"><img src="{url_captcha_image}" border="0" id="captcha_image" /></a> <br />
              <input type="text" name="captcha" size="30" value="" class="commentinput" id="captcha_input" />
              <br />
              {lang_captcha_desc} </td>
          </tr>
          <tr>
            <td class="row1" valign="top">&nbsp;</td>
            <td class="row1"><input type="checkbox" name="blub" value="1">
BLA BLA BLA</td>
          </tr>
          {endif captcha_upload}
        </table>
      </td>
    </tr>
  </table>
  <p align="center">
    <input type="submit" name="uploadbutton" value="{lang_submit}" class="button" />
    <input type="reset" value="{lang_reset}" class="button" />
  </p>
</form>

Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 26, 2006, 09:03:12 PM
Wo soll das Script jetzt hin, in eine externe Datei? Wie muß die heißen? In welches Verzeichnis kommt die? Ich kenne mich mit javascript gar nicht aus, der zunächst eingebaute Code war auch nur von einer Java-Hilfe-Seite aus dem Internet...
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: Acidgod on October 26, 2006, 09:12:12 PM
/template/default/header.html

Code: [Select]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html dir="{direction}">
<head>
<title>{site_name}</title>
<meta http-equiv="content-type" content="text/html; charset={charset}" />
<link rel="stylesheet" href="{template_url}/style.css" />
<script language="javascript" type="text/javascript">
<!--

  var captcha_reload_count = 0;
var captcha_image_url = "{url_captcha_image}";
  function new_captcha_image() {
    if (captcha_image_url.indexOf('?') == -1) {
  document.getElementById('captcha_image').src= captcha_image_url+'?c='+captcha_reload_count;
} else {
  document.getElementById('captcha_image').src= captcha_image_url+'&c='+captcha_reload_count;
}

    document.getElementById('captcha_input').value="";
    document.getElementById('captcha_input').focus();
    captcha_reload_count++;
  }

function opendetailwindow() {
    window.open('','detailwindow','toolbar=no,scrollbars=yes,resizable=no,width=680,height=480');
  }
 
  function right(e) {
    if ((document.layers || (document.getElementById && !document.all)) && (e.which == 2 || e.which == 3)) {
      alert("© Copyright by {site_name}");
      return false;
    }
    else if (event.button == 2 || event.button == 3) {
      alert("© Copyright by {site_name}");
      return false;
    }
    return true;
  }

  if (document.layers){
    document.captureEvents(Event.MOUSEDOWN);
    document.onmousedown = right;
  }
  else if (document.all && !document.getElementById){
    document.onmousedown = right;
  }

document.oncontextmenu = new Function("alert('© Copyright by {site_name}');return false");

// -->
</script>
<script language="JavaScript" type="text/javascript">
<!--
var onechecked=false;
function checkBoxes()
{
var all=document.forms[0];
for(var x = 0; x < all.length; x++)
{
if (all.elements[x].checked == true)
{
onechecked=true;
}
}
if(onechecked == false)
{
alert('Kein Formularfeld angewaehlt!');
return false;
}
}
//-->
</script>
{if has_rss}
<link rel="alternate" type="application/rss+xml" title="{rss_title}" href="{rss_url}" />
{endif has_rss}
</head>
<body bgcolor="#FFFFFF" text="#0F5475" link="#0F5475" vlink="#0F5475" alink="#0F5475">
<br />

/template/default/member_uploadform.html
Code: [Select]
<form method="post" action="{url_member}" enctype="multipart/form-data" onsubmit="return checkBoxes(); uploadbutton.disabled=true;">
  <input type="hidden" name="action" value="uploadimage" />
  {if cat_id}<input type="hidden" name="cat_id" value="{cat_id}" />{endif cat_id}
  <table width="100%" border="0" cellspacing="0" cellpadding="1">
    <tr>
      <td valign="top" class="head1">
        <table width="100%" border="0" cellpadding="4" cellspacing="0">
          <tr>
            <td colspan="2" valign="top" class="head1">{lang_user_upload}</td>
          </tr>
          <tr>
            <td class="row1"><b>{lang_category}</b></td>
            <td class="row1">{cat_name}</td>
          </tr>
          <tr>
            <td class="row2" valign="top">
  <b>{lang_media_file}</b><br />
  <span class="smalltext">
  {lang_max_filesize}<b>{max_media_filsize}</b><br />
  {lang_max_imagewidth}<b>{max_media_imagewidth}</b><br />
  {lang_max_imageheight}<b>{max_media_imageheight}</b><br />
  </span> </td>
            <td class="row2">
              <b>Upload:</b><br />
  <input type="file" name="media_file" class="input" /><br />
  <b>URL:</b><br />
  <input type="text" name="remote_media_file"  size="30" value="{remote_media_file}" class="input" /><br />
  <span class="smalltext"><b>{lang_allowed_file_types}</b> {allowed_media_types}</span>            </td>
          </tr>
          <tr>
            <td class="row1" valign="top">
  <b>{lang_thumb_file}</b><br />
  <span class="smalltext">
  {lang_max_filesize}<b>{max_thumb_filsize}</b><br />
  {lang_max_imagewidth}<b>{max_thumb_imagewidth}</b><br />
  {lang_max_imageheight}<b>{max_thumb_imageheight}</b><br />
  </span> </td>
            <td class="row1">
              <b>Upload:</b><br />
  <input type="file" name="thumb_file" class="input" /><br />
  <b>URL:</b><br />
  <input type="text" name="remote_thumb_file"  size="30" value="{remote_thumb_file}" class="input" /><br />
  <span class="smalltext"><b>{lang_allowed_file_types}</b> {allowed_thumb_types}</span>            </td>
          </tr>
          <tr>
            <td class="row2"><b>{lang_image_name}</b></td>
            <td class="row2"><input type="text" name="image_name"  size="30" value="{image_name}" class="input" /></td>
          </tr>
          <tr>
            <td class="row1" valign="top"><b>{lang_description}</b></td>
            <td class="row1">
              <textarea name="image_description" cols="30" class="textarea" rows="10" wrap="VIRTUAL">{image_description}</textarea>            </td>
          </tr>
          <tr>
            <td class="row2" valign="top"><b>{lang_keywords}</b></td>
            <td class="row2">
              <textarea cols="30" class="textarea" rows="10" wrap="VIRTUAL" name="image_keywords">{image_keywords}</textarea>            </td>
          </tr>
{if captcha_upload}
          <tr>
            <td class="row1" valign="top"><b>{lang_captcha}</b></td>
            <td class="row1">
  <a href="javascript:new_captcha_image();"><img src="{url_captcha_image}" border="0" id="captcha_image" /></a> <br />
              <input type="text" name="captcha" size="30" value="" class="commentinput" id="captcha_input" />
              <br />
              {lang_captcha_desc} </td>
          </tr>
          <tr>
            <td class="row1" valign="top">&nbsp;</td>
            <td class="row1"><input type="checkbox" name="blub" value="1">
BLA BLA BLA</td>
          </tr>
          {endif captcha_upload}
        </table>
      </td>
    </tr>
  </table>
  <p align="center">
    <input type="submit" name="uploadbutton" value="{lang_submit}" class="button" />
    <input type="reset" value="{lang_reset}" class="button" />
  </p>
</form>

Jetzt besser/verständlicher?
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 27, 2006, 05:30:38 AM
Sehr gut, probiere ich heute Abend gleich aus. Vielen Dank bis hierhin...
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 27, 2006, 09:28:18 PM
Bekomme die Fehlermeldung "Kein Formularfeld angewaehlt!"
Egal ob angewählt oder nicht...
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: Acidgod on October 28, 2006, 09:05:15 AM
Gib mal deine URL....
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 28, 2006, 10:41:21 AM
http://www.bos-fahrzeuge.info

Name: text
PW: testtest
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: Acidgod on October 28, 2006, 11:16:54 AM
/template/default/header.html

Code: [Select]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html dir="{direction}">
<head>
<title>{site_name}</title>
<meta http-equiv="content-type" content="text/html; charset={charset}" />
<link rel="stylesheet" href="{template_url}/style.css" />
<script language="javascript" type="text/javascript">
<!--

  var captcha_reload_count = 0;
var captcha_image_url = "{url_captcha_image}";
  function new_captcha_image() {
    if (captcha_image_url.indexOf('?') == -1) {
  document.getElementById('captcha_image').src= captcha_image_url+'?c='+captcha_reload_count;
} else {
  document.getElementById('captcha_image').src= captcha_image_url+'&c='+captcha_reload_count;
}

    document.getElementById('captcha_input').value="";
    document.getElementById('captcha_input').focus();
    captcha_reload_count++;
  }

function opendetailwindow() {
    window.open('','detailwindow','toolbar=no,scrollbars=yes,resizable=no,width=680,height=480');
  }
 
  function right(e) {
    if ((document.layers || (document.getElementById && !document.all)) && (e.which == 2 || e.which == 3)) {
      alert("© Copyright by {site_name}");
      return false;
    }
    else if (event.button == 2 || event.button == 3) {
      alert("© Copyright by {site_name}");
      return false;
    }
    return true;
  }

  if (document.layers){
    document.captureEvents(Event.MOUSEDOWN);
    document.onmousedown = right;
  }
  else if (document.all && !document.getElementById){
    document.onmousedown = right;
  }

document.oncontextmenu = new Function("alert('© Copyright by {site_name}');return false");

// -->
</script>
<script language="JavaScript" type="text/javascript">
<!--
var onechecked=false;
function checkBoxes()
{
var all=document.upload;
for(var x = 0; x < all.length; x++)
{
if (all.elements[x].checked == true)
{
onechecked=true;
}
}
if(onechecked == false)
{
alert('Kein Formularfeld angewaehlt!');
return false;
}
}
//-->
</script>
{if has_rss}
<link rel="alternate" type="application/rss+xml" title="{rss_title}" href="{rss_url}" />
{endif has_rss}
</head>
<body bgcolor="#FFFFFF" text="#0F5475" link="#0F5475" vlink="#0F5475" alink="#0F5475">
<br />

/template/default/member_uploadform.html
Code: [Select]
<form name="upload" method="post" action="{url_member}" enctype="multipart/form-data" onsubmit="return checkBoxes(); uploadbutton.disabled=true;">
  <input type="hidden" name="action" value="uploadimage" />
  {if cat_id}<input type="hidden" name="cat_id" value="{cat_id}" />{endif cat_id}
  <table width="100%" border="0" cellspacing="0" cellpadding="1">
    <tr>
      <td valign="top" class="head1">
        <table width="100%" border="0" cellpadding="4" cellspacing="0">
          <tr>
            <td colspan="2" valign="top" class="head1">{lang_user_upload}</td>
          </tr>
          <tr>
            <td class="row1"><b>{lang_category}</b></td>
            <td class="row1">{cat_name}</td>
          </tr>
          <tr>
            <td class="row2" valign="top">
  <b>{lang_media_file}</b><br />
  <span class="smalltext">
  {lang_max_filesize}<b>{max_media_filsize}</b><br />
  {lang_max_imagewidth}<b>{max_media_imagewidth}</b><br />
  {lang_max_imageheight}<b>{max_media_imageheight}</b><br />
  </span> </td>
            <td class="row2">
              <b>Upload:</b><br />
  <input type="file" name="media_file" class="input" /><br />
  <b>URL:</b><br />
  <input type="text" name="remote_media_file"  size="30" value="{remote_media_file}" class="input" /><br />
  <span class="smalltext"><b>{lang_allowed_file_types}</b> {allowed_media_types}</span>            </td>
          </tr>
          <tr>
            <td class="row1" valign="top">
  <b>{lang_thumb_file}</b><br />
  <span class="smalltext">
  {lang_max_filesize}<b>{max_thumb_filsize}</b><br />
  {lang_max_imagewidth}<b>{max_thumb_imagewidth}</b><br />
  {lang_max_imageheight}<b>{max_thumb_imageheight}</b><br />
  </span> </td>
            <td class="row1">
              <b>Upload:</b><br />
  <input type="file" name="thumb_file" class="input" /><br />
  <b>URL:</b><br />
  <input type="text" name="remote_thumb_file"  size="30" value="{remote_thumb_file}" class="input" /><br />
  <span class="smalltext"><b>{lang_allowed_file_types}</b> {allowed_thumb_types}</span>            </td>
          </tr>
          <tr>
            <td class="row2"><b>{lang_image_name}</b></td>
            <td class="row2"><input type="text" name="image_name"  size="30" value="{image_name}" class="input" /></td>
          </tr>
          <tr>
            <td class="row1" valign="top"><b>{lang_description}</b></td>
            <td class="row1">
              <textarea name="image_description" cols="30" class="textarea" rows="10" wrap="VIRTUAL">{image_description}</textarea>            </td>
          </tr>
          <tr>
            <td class="row2" valign="top"><b>{lang_keywords}</b></td>
            <td class="row2">
              <textarea cols="30" class="textarea" rows="10" wrap="VIRTUAL" name="image_keywords">{image_keywords}</textarea>            </td>
          </tr>
{if captcha_upload}
          <tr>
            <td class="row1" valign="top"><b>{lang_captcha}</b></td>
            <td class="row1">
  <a href="javascript:new_captcha_image();"><img src="{url_captcha_image}" border="0" id="captcha_image" /></a> <br />
              <input type="text" name="captcha" size="30" value="" class="commentinput" id="captcha_input" />
              <br />
              {lang_captcha_desc} </td>
          </tr>
          <tr>
            <td class="row1" valign="top">&nbsp;</td>
            <td class="row1"><input type="checkbox" name="blub" value="1">
BLA BLA BLA</td>
          </tr>
          {endif captcha_upload}
        </table>
      </td>
    </tr>
  </table>
  <p align="center">
    <input type="submit" name="uploadbutton" value="{lang_submit}" class="button" />
    <input type="reset" value="{lang_reset}" class="button" />
  </p>
</form>

Und klappt es jetzt?
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: tansamalaja on October 28, 2006, 11:36:09 AM
Funzt! Vielen Dank!  :D
Title: Re: Bildkriterien durch Anklicken eines Kästchen quittieren
Post by: FunnyUser on February 13, 2007, 12:30:23 PM
Vielen Dank!
Der letzte Code funktioniert wunderbar!

Kurz anpassen: z.B.: "Sie müssen unsere AGB akzeptieren".... und - perfekt!
Würde ich nur jedem empfehlen, der sich von einer Urheberrechtsverletzung distanzieren möchte!


Danke!