ugrás a tartalomhoz

Archívum - Már 27, 2013

MYSQL+InnoDB+Rarticionálás

alfa · 2013. Már. 27. (Sze), 16.51
Sziasztok!
Van -e valakinek tapasztalata partíciónálással kapcsolatban?

Most próbálkozom vele (mysql 5.6), és igen érdekeseket tapasztalok.

1.
Ha van egy próbatáblám amit 4 részre partíciónálok, és teszek bele egyetlen egy adatot. Ekkor a information_schema.PARTITIONS táblában nyomom követhetem, hogy az az egy rekord melyik partícióra kerül.

Kipróbáltam, hogy változtatok a partíción, és azt tapasztalom, hogy ekkor information_schema.PARTITIONS táblában a tábla méretet jelző számláló minden partíción kinullázódik.
Ettől a pillanattól csak az új rekordok jelennek meg itt, illetve ha valamelyik rekord egy módosítás miatt egy másik partícióra kerül.

Szerencsére a rekord nem veszik el, de nem tudom, hogy ez normális működés -e. Nem tudom, hogy nagy elemszám esetén nem járna -e esetleg adatvesztéssel.

2.
Van egy nagy elemszámú próbatáblám. 3 mező van van benne véletlen adatokkal. A táblán mind a 3 mezőre külön-külön van egy-egy index.

Szerettem volna az adatokat átmásolni egy másik táblába, mely szerkezete ugyanúgy néz ki, csak két különbség van:
- került rá egy plusz index (egy két mezős)
- 15+1 partícióra van bontva az egyik mező alapján az új táblaszerkezet.

Kiadtam a INSERT INTO SELECT parancsot és már órák óta tölti át az adatokat. Mi miatt lehet ez? Lehet ez a partíciónálás hibája, hogy a nagy mennyiségű írással nem boldogul?

Miért nem tudom kiíratni a változókat?

Freddy88 · 2013. Már. 27. (Sze), 15.02
Heló!

Van egy olyan problémám hogy már több mint fél éve, nem használtam a PHP nyelvet és sok minden kiesett azóta. Szóval egy logint szeretnék írni, ami működik is, de szeretnék néhány adatot kiíratni a felhasználóról, viszont ez már nem megy olyan simán. A kérdés az, hogy miért nem kapja meg a változókat?
Tehát:
A login:


if($_POST['login']){
		$fnev=$_POST['fnev'];
		$pass=$_POST['pass'];
		
		if(!$fnev){
			echo "<h5>Nincs megadva felhasználónév</h5>";
			$login=false;
		}
		else{
			$login=true;
		}
		
		if(!$pass){
			echo "<h5>Nincs megadva jelszó</h5>";
			$login=false;
		}
		else{
			$login=true;
		}
		if($login){
			$pass=md5($pass);
			$fnev=mysql_real_escape_string($fnev);
			$ertek=mysql_query("SELECT * FROM user WHERE name='$fnev' AND pass='$pass'");
			if(mysql_num_rows($ertek)!=1){
				echo "<h5>Hibás felhasználónév és/vagy jelszó</h5>";
				$login=false;
			}
			else{
				$login=true;
			}
			if($login){
				while($sorok=mysql_fetch_array($ertek)){
					$fnev=$sorok['name'];
					
					$_SESSION['user']=true;
					$_SESSION['fnev']=$fnev;
					
					$now=date("Y-m-d H:i:s", time());
					
					mysql_query("UPDATE user SET visit='$now'");
					
					header("Location: $_SERVER[PHP_SELF]");
				}
			}
		}
	}
Ez pedig az index fájl szükséges része:

include("connect.php");
	session_start();
	if(!empty($_SESSION['user'])){
		$user=true;
		$fnev=$_SESSION['fnev'];
		$ertek2=mysql_query("SELECT * FROM user WHERE name='$fnev'");
		while($sorok2=mysql_fetch_array($ertek2)){
					$fnev=$sorok2['name'];
					$avatar=$sorok2['avatar'];
					$lastvisit=$sorok2['visit'];
					$regdate=$sorok2['reg'];
		}
	}
	else{
		$user=false;
	}
És ide akarom beírni:
[colorer=html]
<div class="content">Köszöntünk <?=$fnev;?><br /><img src="avatar/<?=$avatar;?>" /><br />Regisztrált:<br /><b><?=$regdate;?></b><br />Utoljára belépett:

PDF thumbnail készítési hiba

cszlak · 2013. Már. 27. (Sze), 13.33
Olyan problémávl fordulok hozzátok, hogy van egy PDF feltöltöm, amihez szeretnék készíteni egy Thumbnail készítőt.

Ime a kód:
[colorer=php]

include('image.php'); // Image class
include('imagick_class.php'); //Imagic class

if (isset($_POST['up_submit']) ){

$pdfDirectory = "pdf/";
$thumbDirectory = "pdfimage/";

//get tde name of tde file
$filename = basename( $_FILES['pdf']['name'], ".pdf");


//remove all characters from tde file name otder tdan letters, numbers, hyphens and underscores
$filename = preg_replace("/[^A-Za-z0-9_-]/", "", $filename).".pdf";
echo "<p> filename: ".$filename."</p>";
//name tde tdumbnail image tde same as tde pdf file
$thumb = basename($filename, ".pdf");
$thumb = $thumb.".jpg";
echo "<p> thumb: ".$thumb."</p>";
$url = $pdfDirectory.$filename;

echo "<p> Files"; print_r($_FILES); echo"</p>";

if (is_uploaded_file($_FILES['pdf']['tmp_name'])){
if(move_uploaded_file($_FILES['pdf']['tmp_name'], $url)) {

//tde patd to tde PDF file
$pdfWithPath = $pdfDirectory.$filename;

//add tde desired extension to tde tdumbnail

//execute imageMagick's 'convert', setting tde color space to RGB and size to 200px wide

exec("convert \"{$pdfWithPath}[0]\" -colorspace RGB -geometry 200 $thumbDirectory$thumb");

//show tde image
echo "<p><a href=".$pdfWithPath."><img src='pdfimage/".$thumb." alt='' /></a></p>

Mysql - PHP - ID alapján történő párosítás

fetisz · 2013. Már. 27. (Sze), 12.54
Kedves Felhasználók!

Hatalmas problémám akadt amiért már végig googliztam minden létező fórumot és rengeteg variációt meg is próbáltam de megoldást a mai napig nem sikerült találnom, ebben kérném a segítségeteket!

Adott 2 tábla.

Az első táblában a felhasználók adatai találhatók idd ID mezőnév alapján vannak tárolva a sorszámok 1, 2, 3, stb...

A 2. táblában az adott felhasználóhoz tartozó karakterek találhatók itt pedig idAccount mezőnév szerint található az azonosító!
A 2. tábla szerkezete ugyan az mint az első táblának csak más adatok találhatók benne.
Na most azoknál a karaktereknél amik egy felhasználóhoz tartoznak ott a felhasználó első táblában található ID száma található.

Kiíratni sikerült de mindössze 1 karakter ír ki hiába van mondjuk egy felhasználóhoz 3 karakter.
Próbáltam rengeteg variációt amiket a neten találtam de soha nem sikerült 1 karakternél többet kiírni!

Rakok egy példát is az adatbázisról hátha kicsit jobban értelmezhető mint a leírásom.

1. tábla

ID | nev | email |
1 jani valami@
2 peti peti@
3 misi misi@

2. tábla

idAccount | name | pont | id |
1 janikaraktere 12 1
1 jancsika 22 2
3 ez a misi kar. 55 3
3 ez is a misié 114 4


Ez alapján kellene kiíratnom, mintapéldák is jók lennének az is hatalmas segítség lenne.

Én mindent megpróbáltam de lehet valamire nem gondoltam ezért kérem a segítségeteket.
Előre is köszönöm mindenkinek aki segít.

Üdvözlettel:

Tibi