wi ebekomme ich die letzte id?

Gesperrt
hypekermit
Beiträge: 213
Registriert: Mi 9. Okt 2002, 21:24
Kontaktdaten:

wi ebekomme ich die letzte id?

Beitrag von hypekermit »

hi kummer,

wie bekomme ich $idartlang, $idart zurück, damit ich

Code: Alles auswählen

conMakeArticleIndex ($idartlang, $idart);
ausführen kann?
kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer »

du legst ja in deinem modul den artikel an. da musst du doch die idart und die idartlang kennen. oder liege ich da falsch? wie erstellst du denn den artikel?
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)
hypekermit
Beiträge: 213
Registriert: Mi 9. Okt 2002, 21:24
Kontaktdaten:

richtig

Beitrag von hypekermit »

hi kummer,

sorry das ich mich jetzt erst melde...

der artikel wird so erstellt

wann mache ich conMakeArticleIndex ($idartlang, $idart); ?
vor allem wie bekomme ich idartlang und idart?

Code: Alles auswählen


function scCreateArticle($category, $title = "", $summary = "", $author = "", $is_online = 1) { 

	// create article
	
	
	global $client, $lang; 

	$new_art_id = 0; 
    

	$def = array( 

		"client" => $client, 
		"lang" => $lang, 
		"idcat" => $category, 
		"idcatnew" => array($category), 
		"is_start" => 0, 
		"idtpl" => 4, 
		"idartlang" => null, 
		"title" => $title, 
		"summary" => $summary, 
		"artspec" => null, 
		"created" => date('Y-m-d H:i:s'), 
		"lastmodified" => date('Y-m-d H:i:s'), 
		"author" => $author, 
		"online" => 1, 
		"datestart" => '0000-00-00 00:00:00', 
		"dateend" => '0000-00-00 00:00:00', 
		"artsort" => 0 

		); 


		// con edit first time
		$new_art_id = conEditFirstTime($def["idcat"], $def["idcatnew"], $def["idart"], $def["is_start"], $def["idtpl"], $def["idartlang"], $def["lang"], $def["title"], $def["summary"], $def["artspec"], $def["created"], $def["lastmodified"], $def["author"], $def["online"], $def["keyart"], $def["datestart"], $def["dateend"]); 

		if ($new_art_id != 0) { 
			return $new_art_id; 
		} 
		else { 
			return false; 
		}
}

Code: Alles auswählen


$setfree[] = $sl_id; 
$sl_idartlang = getArtLang($sl_id, $lang);

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer »

das ist jetzt nur eine vermutung. aber ich denke, du hast die idartartlang in der variablen $sl_idartlang und die idart in der variablen $sl_id.

aber das ist ja auch unmöglich der ganze code, oder?
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)
hypekermit
Beiträge: 213
Registriert: Mi 9. Okt 2002, 21:24
Kontaktdaten:

Beitrag von hypekermit »

Hallo so sieht der code aus..

wo und wie kann ich jetzt die indexierung durchführen?

hast du eine idee..?

wann alles richtig funktioniert poste ich auch die anleitung dazu...

Code: Alles auswählen

conMakeArticleIndex ($idartlang, $idart);

Code: Alles auswählen


<?php 

// Frontenduser collection laden
$oFeusers = new FrontendUserCollection;
$oFeuser = $oFeusers->loadItem($auth->auth['uid']);
$author_show = $oFeuser->getProperty('firstname', 'input') . ' ' . $oFeuser->getProperty('lastname', 'input');

//$date = date("Y-m-d H:i:s");
$author = $auth->auth["uname"];

cInclude('classes', 'class.frontend.users.php');
cInclude('classes', 'class.phpmailer.php');

////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////

// Kategorie in welcher der Artikel erstellt werden soll 
$newCat = "CMS_VALUE[0]";

//$newCat = $userCat;

// Die verschiedenen Kategorien (Wenn mehrere Sprachen aktiv)  
//$sl_regions = array("de" => "4", "en" => "122", "cn" => "123"); 

$sl_regions = array("de" => $newCat); 
$sl_regions_t = array("de" => "deutsch", "en" => "english", "cn" => "	中文"); 

////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////

// Artikel on oder offline 
$is_online = "CMS_VALUE[2]";

// Start Artikel 
$is_start = "CMS_VALUE[3]";	 

// Unterverzeichnis für Bild-Dateien 
$sl_pic_upload_subdir = "bilder/termine/"; 
$sl_pic_upload_dir = $cfgClient[$client]["upload"].$sl_pic_upload_subdir; 

// Unterverzeichnis für PDF-Dateien  
$sl_pdf_upload_subdir = "pdf/termine/"; 
$sl_pdf_upload_dir = $cfgClient[$client]["upload"].$sl_pdf_upload_subdir; 

////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////

// Funktion Artikel erstellen

function scCreateArticle($category, $title = "", $summary = "", $author = "", $is_online = 1) { 

	// create article

	$startdatum = $_POST['datum_beginn'];	
	$jahrzahl = substr($startdatum, 6, 10);
	$monat = substr($startdatum, 3, 2);
	$tag = substr($startdatum, 0, 2);
	$neuesStartDatum = $jahrzahl.".".$monat.".".$tag;

	// titel kürzen auf 65 Zeichen
	$title = substr($title, 0, 65);
	
	$title = $neuesStartDatum."_".$title;
	
	global $client, $lang; 

	$new_art_id = 0; 

	$def = array( 

		"client" => $client, 
		"lang" => $lang, 
		"idcat" => $category, 
		"idcatnew" => array($category), 
		"is_start" => 0, 
		"idtpl" => 8, 
		"idartlang" => null, 
		"title" => $title, 
		"summary" => $summary, 
		"artspec" => null, 
		"created" => date('Y-m-d H:i:s'), 
		"lastmodified" => date('Y-m-d H:i:s'), 
		"author" => $author, 
		"online" => 1, 
		"datestart" => '0000-00-00 00:00:00', 
		"dateend" => '0000-00-00 00:00:00', 
		"artsort" => 0 

		); 


	// con edit first time zum erstellen eines neuen artikels mit den notwendigen variablen
	$new_art_id = conEditFirstTime($def["idcat"], $def["idcatnew"], $def["idart"], $def["is_start"], $def["idtpl"], $def["idartlang"], $def["lang"], $def["title"], $def["summary"], $def["artspec"], $def["created"], $def["lastmodified"], $def["author"], $def["online"], $def["keyart"], $def["datestart"], $def["dateend"]); 

	if ($new_art_id != 0) { 
		return $new_art_id; 
	} 
	else { 
		return false; 
	}
}

////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////


// Falsche und ungültige Zeichen löschen 
function deleteChars ($key){
	$special_chars = array("-", "_", "'", ".", "!", "\"", "#", "$", "%", "&", "(", ")", 
	"*", "+", ",", "/", ":", ";", "<", "=", ">", "?", "@", "[", 
		"\\", "]", "^", "`", "{", "|", "}", "~");

	for($i = 127; $i < 192; $i++)	{
		array_push($special_chars, chr($i));  // einige andere spezielle characters
	}

	$key = str_replace($special_chars,"",$key);
	return $key;
}

////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////

// Ausgabe edit modus
if ($edit) { 

	echo "<p>Modul für Frontendeingabe --Termine--</p>"; 


} 
else { 

	if (isset($_POST["sent"])) { 

		// Artikel speichern

		if ($_POST["titel"] == "") { 

			echo "Sie haben keinen Titel angegeben."; 

		} 
		else { 



			// start PDFupload
			if ($_FILES["pdf"]["error"] == 0) { 

				if($_FILES["pdf"]["size"] >6000000){
					echo "Die PDF-Datei ist größer 6 MB und wurde nicht hochgeladen!";
					$sl_pdf = false; 
					$sl_pdf_proceed = false; 
				}

				else {

					if ($_FILES["pdf"]["type"] == "application/pdf") { 

						switch($_FILES["pdf"]["type"]) { 

							case "application/pdf": $sl_ext = ".pdf"; break;

						} 

						$sl_tmp = date("y-m-d");
						
						while(file_exists($sl_pdf_upload_destination)); 

						$pdf_name = $_FILES['pdf']['name'];
						$pdf_name = ereg_replace(".pdf", "", $pdf_name);

						// files jetzt uploaden
						move_uploaded_file($_FILES['pdf']['tmp_name'], $sl_pdf_upload_dir.$pdf_name."_".$sl_tmp.".pdf");
						
						$sl_pdf_upload_destination = $sl_pdf_upload_dir.$pdf_name."_".$sl_tmp.".pdf";
						
						// rechte ändern
						chmod ($sl_pdf_upload_destination, 0777); 

					}

					$sl_pdf = true; 
					$sl_pdf_proceed = true; 

					cInclude("includes", "functions.upl.php"); 

					uplSyncDirectory($sl_pdf_upload_subdir); 

					// get id  

					$db->query("SELECT idupl FROM ".$cfg["tab"]["upl"]." WHERE filename = '".$sl_pdf_upload_filename."' AND dirname = '".$sl_pdf_upload_subdir."'"); 

					$db->next_record(); 

					$sl_pdf_id = $db->f("idupl"); 
					
				} 
			}

			else { 
				//echo "<p>Ihre PDF-Datei wurde nicht gespeichert.</p>"; 

				$sl_pdf = false; 
				$sl_proceed = true; 

			}					 
			// ende PDFupload



		// fortfahren
$sl_proceed = true; 
			if ($sl_proceed) { 

				$setfree = array(); 

				foreach($sl_regions as $region => $sl_idcat) { 

					if ($_POST["region_".$region] == 1) { 

						$sl_id = scCreateArticle ( 

							$sl_idcat, 
							// Das ist der Artikeltitel
						//"Artikel: ".$_POST["titel"],
						$_POST["titel"],

							// Das ist die Zusammenfassung
						// original Zusammenfassung kürzen und dann schreiben
						substr($_POST["kommentar"], 0, 150),  
							"Artikel", 
							0 

							);

						$setfree[] = $sl_id; 

						$sl_idartlang = getArtLang($sl_id, $lang);

											////////////////////
						// Nächster Eintrag
						////////////////////

						conSaveContentEntry($sl_idartlang, "CMS_HTMLHEAD", 1, $_POST["titel"]); 

						////////////////////
						// Nächster Eintrag
						////////////////////

						conSaveContentEntry($sl_idartlang, "CMS_HTML", 10, $_POST["plz"]); 

						////////////////////
						// Nächster Eintrag
						////////////////////

						conSaveContentEntry($sl_idartlang, "CMS_HTML", 11, $_POST["ort"]); 

						////////////////////
						// Nächster Eintrag
						////////////////////

						conSaveContentEntry($sl_idartlang, "CMS_HTML", 15, $_POST["veranstalter"]); 

						////////////////////
						// Nächster Eintrag
						////////////////////

						conSaveContentEntry($sl_idartlang, "CMS_HTML", 16, $_POST["uhrzeit_beginn"]); 

						////////////////////
						// Nächster Eintrag
						////////////////////

						conSaveContentEntry($sl_idartlang, "CMS_HTML", 17, $_POST["veranstaltungsort"]); 

						////////////////////
						// Nächster Eintrag
						////////////////////

						conSaveContentEntry($sl_idartlang, "CMS_HTML", 8, $_POST["datum_beginn"]);
						conSaveContentEntry($sl_idartlang, "CMS_HTML", 14, $_POST["datum_ende"]); 

						////////////////////
						// Nächster Eintrag
						////////////////////

						$quelle = str_replace("http://", "", $_POST["quelle"]); 
						$quelle = str_replace("https://", "", $quelle); 

						$url = "http://" . $quelle; 



						if ($sl_pdf) { 
							$pdf_name = ereg_replace(".pdf", "", $pdf_name); 
							conSaveContentEntry($sl_idartlang, "CMS_HTML", 7, "<img src=\"upload/bilder/pdf.gif\">&nbsp;<a href=\"$sl_pdf_upload_destination\" target=\"_blank\">$pdf_name</a>"); 


						} else { 

						
						conSaveContentEntry($sl_idartlang, "CMS_HTML", 7, '<a href="'.$url.'" target="_blank">'.$quelle.'</a>'); 

						}

						////////////////////
						// Nächster Eintrag
						////////////////////

						$internet = str_replace("http://", "", $_POST["internet"]); 
						$internet = str_replace("https://", "", $internet); 

						$url = "http://" . $internet; 

						conSaveContentEntry($sl_idartlang, "CMS_HTML", 13, '<a href="'.$url.'" target="_blank">'.$internet.'</a>'); 

						////////////////////
						// Nächster Eintrag
						////////////////////
						
						$_POST["kommentar"] = str_replace("\n","<br>",$_POST["kommentar"]);
                                                       conSaveContentEntry($sl_idartlang, "CMS_HTML", 5, $_POST["kommentar"]); 

						////////////////////
						// Nächster Eintrag
						////////////////////

					

					} 

				} 

				// Ausgabe wenn der Artikel geschrieben wurde 
				echo "<div style=\"padding-left:5px; padding-right:5px;\"><br>Vielen Dank.<br>Ihr Artikel wurde soeben freischaltet.<br></div>"; 

				////////////////////////////////////////////////////////////////////////////
				////////////////////////////////////////////////////////////////////////////

				$setfree = base64_encode(serialize($setfree)); 

				// Frontenduser Daten holen 

				$oFeusers = new FrontendUserCollection;
				$oFeuser = $oFeusers->loadItem($auth->auth['uid']);
				$author_show = $oFeuser->getProperty('firstname', 'input') . ' ' . $oFeuser->getProperty('lastname', 'input');

				//$date = date("Y-m-d H:i:s");
				$title = substr(deleteChars($_POST['headline1']), 0, 50);
				$author = $auth->auth["uname"];

			

				////////////////////////////////////////////////////////////////////////////
				////////////////////////////////////////////////////////////////////////////

			} 

		} 

		} else { 

			

				// Ausgabe des Formulars  

				echo '<form name"myForm" id="myForm" action="" method="post" enctype="multipart/form-data">'."\n"; 
				echo '<input type="hidden" name="sent" value="1" />'."\n"; 

				echo '<p></p>'."\n"; 

				echo '<table width="640">'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td>'."\n"; 
				echo '<td align="right">Redakteur: '.$author.'</td>'."\n"; 
				echo '</tr>'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td>&nbsp;</td>'."\n"; 
				echo '<td>&nbsp;</td>'."\n"; 
				echo '</tr></table>'."\n"; 

				echo '<table width="640"><tr><td>';
 
                                echo '<fieldset><legend><b>Einträge</b></legend><table><tr>'."\n"; 
				echo '<td valign="top" width="170">Datum Beginn*</td>'."\n"; 
				echo '<td valign="top"><input readonly type="text" name="datum_beginn" size="60" id=\'datum_beginn\' value="....bitte ausw&auml;hlen !" /><img src=\'upload/bilder/calendar/b_calendar.png\' alt=\'Klick to use Calendar input\' onclick=\'kalender(document.getElementById("datum_beginn"));\'/></td>'."\n"; 
				echo '</tr>'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td valign="top">Uhrzeit Beginn*</td>'."\n"; 
				echo '<td valign="top"><input type="text" name="uhrzeit_beginn" size="70" value="" /></td>'."\n"; 
				echo '</tr>'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td valign="top" width="170">Datum Ende</td>'."\n"; 
				echo '<td valign="top"><input type="text" name="datum_ende" id=\'datum_ende\' size="60" value="" /><img src=\'upload/bilder/calendar/b_calendar.png\' alt=\'Klick to use Calendar input\' onclick=\'kalender(document.getElementById("datum_ende"));\'/></a></td>'."\n"; 
				echo '</tr>'."\n";				

				echo '<tr>'."\n"; 
				echo '<td valign="top">Titel*</td>'."\n"; 
				echo '<td valign="top"><input type="text" name="titel" size="70" value="" /></td>'."\n"; 
				echo '</tr>'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td valign="top">Veranstalter*</td>'."\n"; 
				echo '<td valign="top"><input type="text" name="veranstalter" size="70" value="" /></td>'."\n"; 
				echo '</tr>'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td valign="top">PLZ / Ort*</td>'."\n"; 
				echo '<td valign="top"><input type="text" name="plz" size="8" value="" />&nbsp;&nbsp;<input type="text" name="ort" size="58" value="" /></td>'."\n"; 
				echo '</tr>'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td valign="top">Veranstaltungsort*</td>'."\n"; 
				echo '<td valign="top"><input type="text" name="veranstaltungsort" size="70" value="" /></td>'."\n"; 
				echo '</tr>'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td valign="top">Erläuterung</td>'."\n"; 
				echo '<td valign="top"><textarea type="text" name="kommentar" cols="69" rows="6" wrap="virtual" value="" /></textarea></td>'."\n"; 
				echo '</tr></table></fieldset><br><br>'."\n"; 

				echo '<fieldset><legend><b>Link & Upload</b></legend>';
				echo '<table><tr>'."\n"; 
				echo '<td width="170">Dokument-Datei</td>'."\n"; 
				echo '<td><input type="file" name="pdf" style="width: 446px;" /></td>'."\n"; 
				echo '</tr>'."\n"; 

				echo '<tr>'."\n"; 
				echo '<td><b>oder</b> Link zum Veranstalter</td>'."\n"; 
				echo '<td><input type="text" name="internet" size="70"><br></td>'."\n"; 
				echo '</tr>'."\n"; 


				echo '<tr>'."\n"; 
				echo '<td>Link zum Programm</td>'."\n"; 
				echo '<td><input type="text" name="quelle" size="70" value="" /></td>'."\n"; 
				echo '</tr></table></fieldset><br><br>'."\n"; 				


				echo '<hr noshade="noshade" size="1">';
				echo '<p>* Diese Felder müssen ausgefüllt werden.</p>'; 
				echo '<sup>1</sup> Mehrfachselektion mit gedrückter STRG-Taste möglich.</p>'; 
				echo '<hr noshade="noshade" size="1">';

                                
                                echo '</td></tr></table>';

				echo '</form>'."\n"; 

			} 

		} 

		?>
kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer »

jetzt musst du es halt noch ausprobieren... ich kann dir antworten geben auf deine fragen, aber machen musst du es selber. und schauen, ob es funktioniert.

am einfachsten du gibst dir die besagten beiden variablen einmal an den schirm. und schauest dann in der datenbank, ob das zutreffend ist.
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)
Gesperrt