Brauche Formular für PHP 8

larslunsen
Beiträge: 57
Registriert: Do 22. Jun 2017, 11:25

Brauche Formular für PHP 8

Beitrag von larslunsen »

Hallo Ortwin,

ich habe mir jetzt deine letze Version heruntergeladen und ein Kundenupdate getestet. Das meiste konnte ich zum laufen bekommen, scheitere allerdings am Formular, welches mit 7.4 noch zum Laufen gebracht werden konnte.

Hast du ein Formular für Conlite welches unter PHP 8 (8.1 oder 8.2) läuft?

Oder kannst du sagen, was man am verwendeten Formular ändern müsste?

Update war von Contenido 4.8.19 auf Conlite 3.0.0 RC
PHP 8.1.17
10.6.12-MariaDB

Verwendet habe ich das Kontaktformular auf Adobe Spry 1.6.1 Basis (xDynform). Wenn die Artikelkonfiguration einmal gespeichert ist, kann man die Konfiguration nicht mehr aufrufen (Weiße Seite). In der Errorlog steht:

Code: Alles auswählen

[18-Apr-2023 11:07:18 Europe/Berlin] PHP Fatal error:  Uncaught Error: Undefined constant "a21" in /homepages/38/d13389774/htdocs/witec/2023/conlite/includes/include.tplcfg_edit_form.php(385) : eval()'d code:1
Stack trace:
#0 /homepages/38/d13389774/htdocs/witec/2023/conlite/includes/include.tplcfg_edit_form.php(385): eval()
#1 /homepages/38/d13389774/htdocs/witec/2023/conlite/main.php(238): include_once('/homepages/38/d...')
#2 {main}
  thrown in /homepages/38/d13389774/htdocs/witec/2023/conlite/includes/include.tplcfg_edit_form.php(385) : eval()'d code on line 1
Um die Konfiguration wieder anzuzeigen, muss man einen neuen Artikel erstellen, nach dem 2. Speichern ist wieder Alles weg. Irgendwie will er die Variablen bei den Textfeldern nicht haben (a21 etc.).

Der Modulinput ist so:

Code: Alles auswählen

?><?php
/***********************************************
* Kontaktformular auf Adobe Spry 1.6.1 Basis
* 
* Inputbereich
* aktuell werden Textfield, Textarea und Select unterstützt.
*
* Author      :     Ralf Fleischer
* Copyright   :     xtended cooperation
* Mail        :     info@xtended-coperation.de
* Created     :     01-05-2008
* Version     :     0.9.2
* Modified    :     06-07-2008
************************************************/
$sSubmitLink = '<a href="javascript:if (document.tplcfgform.send) {document.tplcfgform.send.value = 0}; document.tplcfgform.submit();"><img src="images/submit.gif" /></a>';
$sSubmitOnchange='javascript:if (document.tplcfgform.send) {document.tplcfgform.send.value = 0}; document.tplcfgform.submit();';
$Captcha="CMS_VALUE[8]";
$PNGFIX="CMS_VALUE[9]";
$fValue="CMS_VALUE[10]";
$OutputArt="CMS_VALUE[11]";

if($Captcha==1){$CaptchaTrue=" checked";$CaptchaFalse="";}else{$CaptchaTrue="";$CaptchaFalse=" checked";}
if($PNGFIX==1){$PNGFIXTrue=" checked";$PNGFIXFalse="";}else{$PNGFIXTrue="";$PNGFIXFalse=" checked";}
if($OutputArt=="idart"){$OutputIdArt=" checked";$OutputIdCat="";}else{$OutputIdArt="";$OutputIdCat=" checked";}
?><table style="border:1px solid #e2e2e2" cellpadding="0" cellspacing="0" border="0">
    <tr>
        <td colspan="4" style="background:#f1f1f1;font-weight:bold;border-top:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("Versandinformationen");?>&nbsp;</td>
    </tr>
    <tr>
        <td>&nbsp;<?php echo mi18n("Absender EMail");?></td>
        <td colspan="3"><input type="text" name="<?php echo "CMS_VAR[0]";?>" value="<?php echo "CMS_VALUE[0]"; ?>"></td>
    </tr>
    <tr>
        <td>&nbsp;<?php echo mi18n("Absender Name");?></td>
        <td colspan="3"><input type="text" name="<?php echo "CMS_VAR[2]";?>" value="<?php echo "CMS_VALUE[2]"; ?>"></td>
    </tr>
    <tr>
        <td>&nbsp;<?php echo mi18n("Empfänger EMail");?></td>
        <td colspan="3"><input type="text" name="<?php echo "CMS_VAR[1]";?>" value="<?php echo "CMS_VALUE[1]"; ?>"></td>
    </tr>
    <tr>
        <td>&nbsp;<?php echo mi18n("Betreff");?></td>
        <td colspan="3"><input type="text" name="<?php echo "CMS_VAR[3]";?>" value="<?php echo "CMS_VALUE[3]"; ?>"></td>
    </tr>
    <?php
    $c1 = '';
    $c2 = '';
    $c3 = '';
    $c4 = '';
    switch (strtolower("CMS_VALUE[4]")) {
        case "smtp" :
            $c1 = ' checked';
            break;
        case "mail" :
            $c2 = ' checked';
            break;
        case "sendmail" :
            $c3 = ' checked';
            break;
        case "qmail" :
            $c4 = ' checked';
            break;
        default :
            $c3 = ' checked';
    }
    ?>
    <tr>
        <td valign="top"><?php echo mi18n("Mailer");?></td>
        <td colspan="3">
            <input type="radio" name="<?php echo "CMS_VAR[4]";?>" value="mail"<?php echo $c2;?>>&nbsp;<?php echo mi18n("mail");?><br/>
            <input type="radio" name="<?php echo "CMS_VAR[4]";?>" value="qmail"<?php echo $c4;?>>&nbsp;<?php echo mi18n("qmail");?><br/>
            <input type="radio" name="<?php echo "CMS_VAR[4]";?>" value="sendmail"<?php echo $c3;?>>&nbsp;<?php echo mi18n("sendmail");?><br/>
            <input type="radio" name="<?php echo "CMS_VAR[4]";?>" value="smtp"<?php echo $c1;?>>&nbsp;<?php echo mi18n("smtp");?><br/>
        </td>
    </tr>
    <tr>
        <td>&nbsp;<?php echo mi18n("SMTP Host");?></td>
        <td colspan="3"><input type="text" name="<?php echo "CMS_VAR[5]";?>" value="<?php echo "CMS_VALUE[5]"; ?>"></td>
    </tr>
    <tr>
        <td>&nbsp;<?php echo mi18n("SMTP User");?></td>
        <td colspan="3"><input type="text" name="<?php echo "CMS_VAR[6]";?>" value="<?php echo "CMS_VALUE[6]"; ?>"></td>
    </tr>
    <tr>
        <td>&nbsp;<?php echo mi18n("SMTP Passwort");?></td>
        <td colspan="3"><input type="text" name="<?php echo "CMS_VAR[7]";?>" value="<?php echo "CMS_VALUE[7]"; ?>"></td>
    </tr>
    <tr>
        <td colspan="4">&nbsp;</td>
    </tr>
    <tr>
        <td colspan="4" style="background:#f1f1f1;font-weight:bold;border-top:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?=mi18n("Formularkonfiguration")?>&nbsp;</td>
    </tr>
    <tr>
        <td style="border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("IE6-PNGFIX laden:");?>&nbsp;</td>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;" colspan="3">&nbsp;
            <input type="radio" name="<?php echo "CMS_VAR[9]";?>" value="1" <?php echo $PNGFIXTrue; ?> />&nbsp;<?php echo mi18n("Ja");?>&nbsp;
            <input type="radio" name="<?php echo "CMS_VAR[9]";?>" value="0" <?php echo $PNGFIXFalse; ?> />&nbsp;<?php echo mi18n("Nein");?>&nbsp;
            
        </td>
    </tr>
    <tr>
        <td style="border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("Captcha aktivieren:");?>&nbsp;</td>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;" colspan="3">&nbsp;
            <input type="radio" name="<?php echo "CMS_VAR[8]";?>" value="1" <?php echo $CaptchaTrue; ?> />&nbsp;<?php echo mi18n("Ja");?>&nbsp;
            <input type="radio" name="<?php echo "CMS_VAR[8]";?>" value="0" <?php echo $CaptchaFalse; ?> />&nbsp;<?php echo mi18n("Nein");?>&nbsp;
            
        </td>
    </tr>
    <tr>
        <td style="border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("IdCat oder IdArt:");?>&nbsp;</td>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;" colspan="3">&nbsp;
            <input type="radio" name="<?php echo "CMS_VAR[11]";?>" value="idart" <?php echo $OutputIdArt; ?> />&nbsp;<?php echo mi18n("IdArt");?>&nbsp;
            <input type="radio" name="<?php echo "CMS_VAR[11]";?>" value="idcat" <?php echo $OutputIdCat; ?> />&nbsp;<?php echo mi18n("IdCat");?>&nbsp;
            
        </td>
    </tr>
    <tr>
        <td>&nbsp;<?php echo mi18n("Anzahl der Formularfelder:");?>&nbsp;</td>
        <td style="border-left:1px solid #e2e2e2;" colspan="3">&nbsp;<input type="text" name="CMS_VAR[10]" value="CMS_VALUE[10]" size="3" />&nbsp;
        <?php echo mi18n("speichern");?>&nbsp;<?php echo $sSubmitLink;?>&nbsp;</td>
    </tr>
    <tr>
        <td style="background:#f1f1f1;border-top:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("Label (Ohne Leerzeichen);")?>&nbsp;</td>
        <td style="background:#f1f1f1;border-left:1px solid #e2e2e2;border-top:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("Type");?>&nbsp;</td>
        <td style="background:#f1f1f1;border-left:1px solid #e2e2e2;border-top:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("Pflichtfeld");?>&nbsp;</td>
        <td style="background:#f1f1f1;border-left:1px solid #e2e2e2;border-top:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("Zeichenanzahl");?>&nbsp;</td>
    </tr>
<?php
if($fValue!=""){
    for ($i=1;$i<=$fValue;$i++){
        if($i<=9){$ii="0".$i;}else{$ii=$i;}
        
        $fVar=20+$ii;
        $fVarTempName=$fVar;
        $fVarTempRequire="r".$fVar;
        $fVarTempArt="a".$fVar;
        //$fVarTempArt="".$fVar;
        $fVarTempCharMin="cmi".$fVar;
        $fVarTempCharMax="cma".$fVar;
        $fVarTempFormat="form".$fVar;
        
        $fValueTempName="CMS_VALUE[$fVarTempName]";
        $fValueTempRequire="CMS_VALUE[$fVarTempRequire]";
        $fValueTempArt="CMS_VALUE[$fVarTempArt]";

        if($fValueTempRequire=="true"){$tempRequireTrueChecked="checked";}else{$tempRequireTrueChecked="";}
        if($fValueTempRequire=="false"){$tempRequireFalseChecked="checked";}else{$tempRequireFalseChecked="";}
        
        ?>
    <tr>
        <?php if(($fValueTempArt=="cmshead")OR($fValueTempArt=="cmshtml")){ ?>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;"><input type="hidden" name="<?php echo "CMS_VAR[$fVarTempName]";?>" value="<?php echo $fVarTempName;?>" size="20" />&nbsp;<?php echo mi18n("keine Formularfelder");?></td>
        <?php }else{ ?>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;"><input type="text" name="<?php echo "CMS_VAR[$fVarTempName]";?>" value="<?php echo "CMS_VALUE[$fVarTempName]";?>" size="20" /></td>
        <?php } ?>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">
            <select name="<?php echo "CMS_VAR[$fVarTempArt]";?>" onChange="<?php echo $sSubmitOnchange; ?>">
                <optgroup label="<?php echo mi18n("Formular-Textzeilenfelder");?>">
                    <option value="text"        <?php if($fValueTempArt=="text"){echo "selected";}else{echo "";}?>>         <?php echo mi18n("Textfeld");?></option>
                    <option value="zip"         <?php if($fValueTempArt=="zip"){echo "selected";}else{echo "";}?>>          <?php echo mi18n("PLZ 5-stellig;")?></option>
                    <option value="url"         <?php if($fValueTempArt=="url"){echo "selected";}else{echo "";}?>>          <?php echo mi18n("URL");?></option>
                    <option value="email"       <?php if($fValueTempArt=="email"){echo "selected";}else{echo "";}?>>        <?php echo mi18n("Email");?></option>
                    <option value="int"         <?php if($fValueTempArt=="int"){echo "selected";}else{echo "";}?>>          <?php echo mi18n("Integer");?></option>
                    <option value="date"        <?php if($fValueTempArt=="date"){echo "selected";}else{echo "";}?>>         <?php echo mi18n("Datumsfeld");?></option>
                    <option value="time"        <?php if($fValueTempArt=="time"){echo "selected";}else{echo "";}?>>         <?php echo mi18n("Zeitfeld");?></option>
                </optgroup>
                <optgroup label="<?php echo mi18n("Formular-Auswahlfelder");?>">
                    <option value="select"      <?php if($fValueTempArt=="select"){echo "selected";}else{echo "";}?>>       <?php echo mi18n("Select-Feld");?></option>
                </optgroup>
                <optgroup label="<?php echo mi18n("Formular-Radiofelder");?>">
                    <option value="oneradio"    <?php if($fValueTempArt=="oneradio"){echo "selected";}else{echo "";}?>>     <?php echo mi18n("Radiobox einzeln");?></option>
                    <option value="grpradio"    <?php if($fValueTempArt=="grpradio"){echo "selected";}else{echo "";}?>>     <?php echo mi18n("Radiobox-Gruppe");?></option>
                </optgroup>
                <optgroup label="<?php echo mi18n("Formular-Checkboxen");?>">
                    <option value="onecheckbox" <?php if($fValueTempArt=="onecheckbox"){echo "selected";}else{echo "";}?>>  <?php echo mi18n("Checkbox einzeln");?></option>
                    <option value="grpcheckbox" <?php if($fValueTempArt=="grpcheckbox"){echo "selected";}else{echo "";}?>>  <?php echo mi18n("Checkbox-Gruppe");?></option>
                </optgroup>
                <optgroup label="<?php echo mi18n("Formular-Textbreichfelder");?>">
                    <option value="textarea"    <?php if($fValueTempArt=="textarea"){echo "selected";}else{echo "";}?>>     <?php echo mi18n("Textarea");?></option>
                </optgroup>
                <optgroup label="<?php echo mi18n("Formular-Versteckte Felder");?>">
                    <option value="hidden"      <?php if($fValueTempArt=="hidden"){echo "selected";}else{echo "";}?>>       <?php echo mi18n("Verstecktes Feld");?></option>
                </optgroup>
                <optgroup label="<?php echo mi18n("normale Textbereiche");?>">
                    <option value="cmshead"     <?php if($fValueTempArt=="cmshead"){echo "selected";}else{echo "";}?>>      <?php echo mi18n("&Uuml;berschrift");?></option>
                    <option value="cmshtml"     <?php if($fValueTempArt=="cmshtml"){echo "selected";}else{echo "";}?>>      <?php echo mi18n("Textbereich");?></option>
                </optgroup>
            </select>
        </td>
        <?php if($fValueTempArt=="hidden"){ ?>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;
        <input type="text" name="<?php echo "CMS_VAR[$fVarTempFormat]";?>" value="<?php echo "CMS_VALUE[$fVarTempFormat]";?>" size="10" />&nbsp;<?php echo mi18n("Feldwert");?>&nbsp;
        </td>
        <?php }elseif(($fValueTempArt=="cmshead")OR($fValueTempArt=="cmshtml")){ ?>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("wird nicht benötigt");?>&nbsp;</td>
        <?php }else{ ?>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;
            <input type="radio" name="<?php echo "CMS_VAR[$fVarTempRequire]";?>" value="true" <?php echo $tempRequireTrueChecked;?> />&nbsp;<?php echo mi18n("Ja");?>&nbsp;
            <input type="radio" name="<?php echo "CMS_VAR[$fVarTempRequire]";?>" value="false" <?php echo $tempRequireFalseChecked;?> />&nbsp;<?php echo mi18n("Nein");?>&nbsp;
        </td>
        <?php
        }
        if(($fValueTempRequire=="true")AND($fValueTempArt!="zip")AND($fValueTempArt!="url")AND($fValueTempArt!="email")AND($fValueTempArt!="select")AND($fValueTempArt!="date")AND($fValueTempArt!="time")AND($fValueTempArt!="grpradio")AND($fValueTempArt!="grpcheckbox")AND($fValueTempArt!="oneradio")AND($fValueTempArt!="onecheckbox")){
        ?>  
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;
            <input type="text" name="<?php echo "CMS_VAR[$fVarTempCharMin]";?>" value="<?php echo "CMS_VALUE[$fVarTempCharMin]";?>" size="3" />&nbsp;<?php echo mi18n("Min.");?>&nbsp;
            <input type="text" name="<?php echo "CMS_VAR[$fVarTempCharMax]";?>" value="<?php echo "CMS_VALUE[$fVarTempCharMax]";?>" size="3" />&nbsp;<?php echo mi18n("Max.");?>&nbsp;
        </td>
        <?php
        }elseif(($fValueTempRequire=="true")AND($fValueTempArt=="email")){
            if("CMS_VALUE[$fVarTempCharMin]"=="fromthismail"){$checked1='checked="checked"';}else{$checked1='';}
            if("CMS_VALUE[$fVarTempCharMax]"=="confirm"){$checked2='checked="checked"';}else{$checked2='';}
            $fromthismailCheckboxnames[]="CMS_VAR[$fVarTempCharMin]";
        ?>  
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;
            <input onClick="javascript:dechecked();this.checked = true;" id="<?php echo $fVarTempCharMin;?>" type="checkbox" <?php echo $checked1; ?> name="<?php echo "CMS_VAR[$fVarTempCharMin]";?>" value="fromthismail" />&nbsp;<?php echo mi18n("Diese Email als Absender")?>&nbsp;
            <input id="<?php echo $fVarTempCharMax;?>" type="checkbox" <?php echo $checked2; ?> name="<?php echo "CMS_VAR[$fVarTempCharMax]";?>" value="confirm" />&nbsp;<?php echo mi18n("Best&auml;tigung per php-mail senden")?>&nbsp;
            
        </td>
        <?php
        }elseif(($fValueTempRequire=="true")AND($fValueTempArt=="date")){
        ?>  
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;
            <input type="text" name="<?php echo "CMS_VAR[$fVarTempFormat]";?>" value="<?php echo "CMS_VALUE[$fVarTempFormat]";?>" size="10" />&nbsp;<?php echo mi18n("Datumformat Bsp: dd-mm-yyyy oder dd/mm/yy usw.");?>&nbsp;
        </td>
        <?php
        }elseif(($fValueTempRequire=="true")AND($fValueTempArt=="time")){
        ?>  
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;
            <input type="text" name="<?php echo "CMS_VAR[$fVarTempFormat]";?>" value="<?php echo "CMS_VALUE[$fVarTempFormat]";?>" size="10" />&nbsp;<?php echo mi18n("Zeitformat Bsp: HH:mm:ss, hh:ss oder HH:mm");?>&nbsp;
        </td>
        <?php
        }elseif(($fValueTempArt=="grpradio")OR($fValueTempArt=="grpcheckbox")){
        ?>  
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;
            <input type="text" name="<?php echo "CMS_VAR[$fVarTempFormat]";?>" value="<?php echo "CMS_VALUE[$fVarTempFormat]";?>" size="3" />&nbsp;<?php echo mi18n("Anzahl Spalten");?>&nbsp;
            <?php if (($fValueTempRequire=="true")AND($fValueTempArt=="grpcheckbox")){ ?>
            <input type="text" name="<?php echo "CMS_VAR[$fVarTempCharMin]";?>" value="<?php echo "CMS_VALUE[$fVarTempCharMin]";?>" size="3" />&nbsp;<?php echo mi18n("Min.");?>&nbsp;
            <input type="text" name="<?php echo "CMS_VAR[$fVarTempCharMax]";?>" value="<?php echo "CMS_VALUE[$fVarTempCharMax]";?>" size="3" />&nbsp;<?php echo mi18n("Max.");?>&nbsp;
            <?php } ?>
        </td>
        <?php
        }else{
        ?>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("wird nicht benötigt");?>&nbsp;</td>
        <?php
        }
        ?>
    </tr>   
        <?php
        if(($fValueTempArt=="select")OR($fValueTempArt=="grpradio")OR($fValueTempArt=="grpcheckbox")){
            $fVarTempSelect = "a".$fVarTempArt;
        ?>
    <tr>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;</td>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("Felderanzahl");?>&nbsp;</td>
        <td colspan="2" style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<input type="text" name="<?php echo "CMS_VAR[$fVarTempSelect]";?>" value="<?php echo "CMS_VALUE[$fVarTempSelect]";?>"" size="3" />&nbsp;<?php echo mi18n("speichern");?>&nbsp;<?php echo $sSubmitLink;?>&nbsp;</td>
    </tr>
        <?php 
            if("CMS_VALUE[$fVarTempSelect]"!=""){
                for ($z=1;$z<="CMS_VALUE[$fVarTempSelect]";$z++){
                    $fVarTempSelectName=substr($fVarTempSelect, 2)+$z;
                    $fVarTempSelectName=ab.$fVarTempSelectName.$i;
                ?>
    <tr>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;</td>
        <td style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<?php echo mi18n("Feld-Eintrag")." ".$z;?>&nbsp;</td>
        <td colspan="2" style="border-left:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;">&nbsp;<input type="text" name="<?php echo "CMS_VAR[$fVarTempSelectName]";?>" value="<?php echo "CMS_VALUE[$fVarTempSelectName]";?>"" />&nbsp;</td>
    </tr>
                <?php
                }
            } 
        }
    }
}
?>
</table>
<script language="JavaScript">
<!--
function dechecked(){
<?php
if(is_array($fromthismailCheckboxnames) && count($fromthismailCheckboxnames) > 0){foreach ($fromthismailCheckboxnames as $checkboxNames){
?>
    document.getElementsByName("<?php echo $checkboxNames; ?>")[0].checked = false;
<?php
    }
}
?>
}
//-->
</script>
<?php
Der Kunden braucht leider mehrere Anfrageformulare und ich würde gerne Conlite verwenden.

Grüße Lars
Oldperl
Moderator
Beiträge: 83
Registriert: Do 9. Jun 2016, 15:27
Wohnort: Eltmann-Limbach
Kontaktdaten:

Re: Brauche Formular für PHP 8

Beitrag von Oldperl »

Hallo Lars,

ich muss mal schauen. Könnte sein, ich hab schon eine angepasste Version des Moduls irgendwo. Aber da muss ich erst mal durch meine Projekte zappen. ;)
Gruß aus Franken

Ortwin
Oldperl
Moderator
Beiträge: 83
Registriert: Do 9. Jun 2016, 15:27
Wohnort: Eltmann-Limbach
Kontaktdaten:

Re: Brauche Formular für PHP 8

Beitrag von Oldperl »

Hallo Lars,

also vom xDynForm von Ralf habe ich keine Version. Habe nur eine Version von Kummers uraltem Modul mit direkter Eingabe im Backendeditor ( :arrow: w3concepts.form.v1), welches ich für ConLite adaptiert und überarbeitet habe.
module-cl-contactform-develop.zip
Dazu benötigst du dann noch die Securimage Captcha Lib von https://www.phpcaptcha.org/ für ein Captcha.
:arrow: https://conlite.org/dl/securimage-nextgen.zip
Diese Dateien gehören in einen cms/securimage Ordner.

Leider bin ich noch nicht dazu gekommen das Modul besser zu dokumentieren. Du müsstest dir also die grundlegenden Infos aus dem Thread von Andreas holen. Auch habe ich es noch nicht ausgiebig unter PHP8.x testen können. Daher ohne Garantie.

Keine Ahnung ob ich das Module von Ralf auch noch überarbeite. Ich denke aber ohne konkreten Auftrag wohl eher nicht, dafür fehlt mir momentan einfach die Zeit.

Hoffe ich konnte dir damit helfen. Für Fragen stehe ich, wie immer, gerne zur Verfügung.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Gruß aus Franken

Ortwin
Oldperl
Moderator
Beiträge: 83
Registriert: Do 9. Jun 2016, 15:27
Wohnort: Eltmann-Limbach
Kontaktdaten:

Re: Brauche Formular für PHP 8

Beitrag von Oldperl »

Hallo Lars,

bevor ich es vergesse, das Modul ist für den Einsatz im cms/data/module Ordner mit eingeschaltetem ModEdit vorgesehen. Falls Du es direkt importieren möchtest, im Unterordner xml liegt eine package-xml-Datei zum Import im Modulbereich.
Gruß aus Franken

Ortwin
larslunsen
Beiträge: 57
Registriert: Do 22. Jun 2017, 11:25

Re: Brauche Formular für PHP 8

Beitrag von larslunsen »

Hallo,

ich habe das Modul mal installiert und konfiguriert.
Den Securimage Ordner angelegt und alle Inhalte rein.

Ich bekomme unter dem Formular aber kein Capchta angezeigt und beim Klick auf Senden steht da: "Ihr Captcha Code war nicht korrekt. Bitte versuchen Sie es erneut.".

In der Errorlog steht:

Code: Alles auswählen

[26-Apr-2023 10:05:31 Europe/Berlin] PHP Notice:  The $code parameter passed to Securimage::check() must be a string, NULL given in /homepages/..../htdocs/witec/2023/cms/securimage/securimage.php on line 1027
[26-Apr-2023 10:05:31 Europe/Berlin] PHP Warning:  No captcha ID supplied to Securimage::check(). Captcha code cannot be validated in /homepages/..../htdocs/witec/2023/cms/securimage/securimage.php on line 1065
Ich weiß nicht, wo ich jetzt ansetzen soll.

Grüße Lars
Oldperl
Moderator
Beiträge: 83
Registriert: Do 9. Jun 2016, 15:27
Wohnort: Eltmann-Limbach
Kontaktdaten:

Re: Brauche Formular für PHP 8

Beitrag von Oldperl »

Hallo Lars,

hab das Modul nochmal geändert :arrow:
module-cl-contactform-develop.zip
Um das Captcha zu nutzen muss der securimage-Ordner vorhanden sein, und im Editor in der Formulardefinition der Captcha-Tag gesetzt sein

Code: Alles auswählen

###name:captcha;type:captcha###
Fehlt dieser, sollte nun keine Meldung mehr angezeigt werden.

Kannst Du das mal bitte ausprobieren?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Gruß aus Franken

Ortwin
larslunsen
Beiträge: 57
Registriert: Do 22. Jun 2017, 11:25

Re: Brauche Formular für PHP 8

Beitrag von larslunsen »

Hallo,

Moduloutput wird mir rot (Ampel) angezeigt. Nicht grün!

Grüße Lars
larslunsen
Beiträge: 57
Registriert: Do 22. Jun 2017, 11:25

Re: Brauche Formular für PHP 8

Beitrag von larslunsen »

Hallo Ortwin,

lösche ich folgende Zeile:

Code: Alles auswählen

use PHPMailer\PHPMailer\PHPMailer;
wird die Ampel grün, aber die Brauch es doch sicher. Hast du eine Idee dazu?

Grüße Lars
Oldperl
Moderator
Beiträge: 83
Registriert: Do 9. Jun 2016, 15:27
Wohnort: Eltmann-Limbach
Kontaktdaten:

Re: Brauche Formular für PHP 8

Beitrag von Oldperl »

Hallo Lars,

ja, habe ich. Der Parser bei ConLite, wie auch der bei Contenido, ist diesbezüglich einfach veraltet, und müsste entsprechend mal erneuert werden.

Es gibt 2 mögliche Workarounds.

Der erste wäre, die use-Anweisung zu entfernen und dafür direkt bei der Instanzierung des Mailers anzugeben. Ich weiß aber nicht, was der Parser dazu meint.

Der zweite ist, einfach die Prüfung der Module zu deaktivieren. Das ist irgendwo in den Systemeinstellungen möglich. Ich sitze nur gerade im Garten und kann nicht nachschauen wo.

Schau mal, ob die eine der zwei Möglichkeiten nutzen kannst. Meld dich nochmal, ob es geklappt hat oder nicht.
Gruß aus Franken

Ortwin
larslunsen
Beiträge: 57
Registriert: Do 22. Jun 2017, 11:25

Re: Brauche Formular für PHP 8

Beitrag von larslunsen »

Halo Ortwin, danke für die Info.

Ich habe mal im alten Forum gesucht und leider keine Mandanten-/Systemeinstellung gefunden, um die Modulprüfung zu deaktivieren. Vielleicht findest oder hast du nocht etwas dazu gefunden.

Noch ein paar kleine Fragen zum Formular:

Kann man evtl. Hidden-Felder mit übergeben und wenn ja, wie wäre denn dafür der Eintrag (...###name:.....). Ich habe leider keine Doku zu dem Formular gefunden. (PS: habe ich gerade hinbekommen) Wenn du trotzdem vielleicht noch irgendwo die Doku hast wäre das super.

Wie kann man festlegen, dass die Captcha Einträge nicht mit der Mail übergeben werden?
In der Mail steht z.B.
ct_captcha 2tgH23
captcha_id 52947b47aae53f7faf4770df1488d3138ff3a920

Danke
Grüße Lars
Antworten